C# 在MVC4中获取客户端计算机名

C# 在MVC4中获取客户端计算机名,c#,asp.net,asp.net-mvc,asp.net-mvc-4,C#,Asp.net,Asp.net Mvc,Asp.net Mvc 4,下面的方法用于获取MVC4中的客户机名称。我注意到,对于一些客户端,它返回一个空字符串,你知道为什么会发生这种情况吗 有没有其他更可靠的方法来获取客户机的机器名 private string GetWorkstation() { string ip = Request.UserHostName; IPAddress myIP = IPAddress.Parse(ip); IPHostEntry GetIPHost = Dns.GetHost

下面的方法用于获取MVC4中的客户机名称。我注意到,对于一些客户端,它返回一个空字符串,你知道为什么会发生这种情况吗

有没有其他更可靠的方法来获取客户机的机器名

private string GetWorkstation()
    {
        string ip = Request.UserHostName;
        IPAddress myIP = IPAddress.Parse(ip);
        IPHostEntry GetIPHost = Dns.GetHostEntry(myIP);
        List<string> compName = GetIPHost.HostName.ToString().Split('.').ToList();
        return compName.First().ToUpper();
    }
私有字符串GetWorkstation()
{
字符串ip=Request.UserHostName;
IPAddress myIP=IPAddress.Parse(ip);
IPHostEntry GetIPHost=Dns.GetHostEntry(myIP);
List compName=GetIPHost.HostName.ToString().Split('.').ToList();
返回compName.First().ToUpper();
}

你为什么不试试
系统.Net.Dns.GetHostName()

你读过这个问题吗?@JonesyCheck这个你知道当它无法获取主机名时,你可以登录
ip
获取提示吗?@Deepu:OP已经在使用
Dns.GetHostEntry
,这个问题有什么帮助?@Patrick IP地址可能会改变,如果它们是由DHCP提供的,那么它们不是确定客户端的有效方法。