2009-06-19 141 views

回答

11

像这样的事情只是比较应该工作...

var ips = new[] { IPAddress.Parse("127.0.0.1"), 
        IPAddress.Parse("192.168.1.1"), 
        IPAddress.Parse("10.0.0.1") }; 

var ep = new IPEndPoint(IPAddress.Parse("127.0.0.1"), 0); 

if (ips[0].Equals(ep.Address)) 
{ 
    Console.WriteLine("Equal!"); 
} 
0

那么你可以得到它们:ToString()然后比较它们。或者,您可以遍历IPV4 ip拥有的4个数字,并对它们进行比较。

-1

只需比较结构的每个成员即可。

2

我假设你已经通过

System.Net.EndPoint ep = client.Client.RemoteEndPoint; 
System.Net.IPEndPoint ip = (System.Net.IPEndPoint)ep; 

检索到的IP地址,如果是这样的话,你可以通过

System.Net.IPEndPoint ip = (System.Net.IPEndPoint)ep; 
ip.ToString(); 
if(Ip[0] == ip.toString()); 
1

所有上述变体都可以使用,但还有另一个选项在此处未提及: 使用IpAddress GetAddressBytes方法获取地址作为字节并进行比较。如果您需要进行其他处理(如搞清楚,如果一个IP是IP类或者是这样的),这可能是有用的..