我有两个客户端IPAddress
从同一个 创建实例byte[]
并通过WCF(使用DataContractSerializer
)发送到服务器.
在服务器上,这些IPAddress
实例作为键插入字典中,但由于某种原因,它们被添加为不同的键.
记录时我发现它们相同但GetHashCode
返回不同的结果.
var client1Address = // sent from client1
var client2Address = // sent from client2
Console.WriteLine(client1Address.Equals(client2Address));
Console.WriteLine(client1Address.GetHashCode().Equals(client2Address.GetHashCode()));
Run Code Online (Sandbox Code Playgroud)
输出:
true
false
Run Code Online (Sandbox Code Playgroud)
等于IPAddress
实例如何返回不同的GetHashCode
结果?