IPEndPoint对象无法正常工作的比较

Mar*_*ell 6 c#

我有一个IPEndPoint a和b,其IPAddress和Port完全相同,但==运算符在IPEndPoint上没有返回true.为了使事情变得更加奇怪,我试图通过简单地单独比较IPAddress和Port来避免问题,但它仍然没有返回true.

有没有人遇到过这个?如果是这样,我全神贯注于高效的解决方案.我们有多达10k个IPEndPoints的集合,并通过LINQ(PLINQ很快)查询它们.

dtb*_*dtb 10

无论IPEndPointip地址没有实现==操作符.默认情况下,==运算符会比较两个对象是否是相同的引用,而不是它们代表相同的值.

请改用IPAddress.Equals/IPEndPoint.Equals方法.