使用IPAddress.Address会导致异常

时间:2014-07-18 09:37:26

标签: c#

我有一个旧服务,我可以通过以下方式比较2个IP地址(启动服务时):

if (IPAddress1.Address == IPAddress2.Address)
{
    ...
}

在2003服务器上安装并启动它总是运行良好,但现在当我尝试在2008服务器上安装它时,我得到以下异常:

  

无法启动服务。 System.Net.Sockets.SocketException:The   引用的对象类型不支持尝试操作   在System.Net.IPAddress.get_Address()

(奇怪的是,当尝试在客户端2008服务器上安装并启动它时,它可以工作)。

有什么问题?

1 个答案:

答案 0 :(得分:5)

根据文档,Address属性现已过时 - 建议您改用GetAddressBytes

虽然文档建议您使用Equals

进行比较
if (IPAddress1.Equals(IPAddress2))
{
   ...
}