Amarnath Bal..
14
C#
string IPAddress = GetIPAddress();
public string GetIPAddress()
{
IPHostEntry Host = default(IPHostEntry);
string Hostname = null;
Hostname = System.Environment.MachineName;
Host = Dns.GetHostEntry(Hostname);
foreach (IPAddress IP in Host.AddressList) {
if (IP.AddressFamily == System.Net.Sockets.AddressFamily.InterNetwork) {
IPAddress = Convert.ToString(IP);
}
}
return IPAddress;
}
VB.net
Dim Host As IPHostEntry
Dim Hostname As String
Hostname = My.Computer.Name
Host = Dns.GetHostEntry(Hostname)
For Each IP As IPAddress In Host.AddressList
If IP.AddressFamily = System.Net.Sockets.AddressFamily.InterNetwork Then
IPAddress = Convert.ToString(IP)
End If
Next
Return IPAddress
希望这可以帮助
这将返回服务器的IP地址,而不是问题中询问的客户端的IP地址。OP正在尝试从当前的HttpContext中拉出IP地址,但是您正在从服务器中获取它。这不能回答问题(尽管可以很好地回答另一个问题!)。 (7认同)
@Sushri我已经更新了我的答案Hostname = System.Environment.MachineName; (2认同)