11/28/2014 07:55:00 a. m.
Share:
Blog Informático sobre Análisis y Desarrollo de Software.
using System.Web;En este caso estoy creando un método estático que me obtenga la dirección IP de un equipo.
public static string GetIpCliente(System.Web.HttpContext contexto)
{
string IP4Address = String.Empty;
foreach (IPAddress IPA in Dns.GetHostAddresses(contexto.Request.UserHostAddress))
{
// CODIGO
}
}
El propósito del procedimiento lo explique en una entrada anterior, por si les interesa verlo es la siguiente:
obtener el nombre del equipo y la dirección IP
String ip = Utilitarios.GetIpCliente(System.Web.HttpContext.Current);
Aquí Utilitarios es una clase estática (no es necesario instanciarla para poder acceder a sus métodos estáticos públicos) y lo que se le pasaría al método GetIpCliente es el HttpContext de la actual solicitud HTTP a la aplicación web.
public static string GetIpCliente(System.Web.HttpContext contexto)
{
string IP4Address = String.Empty;
foreach (IPAddress IPA in Dns.GetHostAddresses(contexto.Request.UserHostAddress))
{
if (IPA.AddressFamily.ToString() == "InterNetwork" || IPA.AddressFamily.ToString() == "InterNetworkV6")
{
IP4Address = IPA.ToString();
break;
}
}
if (IP4Address != "127.0.0.1" && IP4Address != "::1" ) //String.Empty
{
return IP4Address;
}
foreach (IPAddress IPA in Dns.GetHostAddresses(Dns.GetHostName()))
{
if (IPA.AddressFamily.ToString() == "InterNetwork")
{
IP4Address = IPA.ToString();
break;
}
}
return IP4Address;
}
Más información: http://www.4guysfromrolla.com/articles/071807-1.aspx
0 comentarios: