好的,这是一个小问题......但仍然令人恼火。
在MSVS 2008 .NET 3.5 I IPAdress.Address很长,我只是使用
if(subnet == subnetmask.Address & addr.Address) { ... }
然后现在我刚刚安装了MSVS 2010,仍然使用.NET 3.5但不知怎的,它告诉我IPAddress.Address已经过时了。
我仍然可以在BitConverter.ToInt64(subnet.GetAddressBytes(), 0)
中包装一个BitConvertor,但感觉就像我倒退了。是否有更优雅的方式或内置功能来检查子网?
感谢。
答案 0 :(得分:4)
IPAddress.Address
被标记为过时的原因是:
此属性已被弃用。它是地址族依赖的。 请使用IPAddress.Equals方法执行比较。 http://go.microsoft.com/fwlink/?linkid=14202
随着IPv6的到来,取决于IPv4的具体功能应该被视为过时。您的解决方法具有相同的问题 - 依赖于IPv4。我认为你有两个选择: