同一GUID可以生成不同的哈希码吗?

Mat*_*zer 1 .net c# guid hashcode .net-4.6.2

给定相同的GUID Object.GetHashCode会生成不同的哈希码,但会Object.Equals显示相同的GUID等于.

整个GUID:

在此输入图像描述

不同的哈希码:

在此输入图像描述

相等== true:

在此输入图像描述

而且,显然,两者都是System.Guid:

在此输入图像描述

即使它是相同的GUID,它们也是不同的值,因为它们是从两个来源反序列化的.

这是预期的行为吗?

Mar*_*ell 6

您的测试不正确.在你正在比较的最后一部分.GetType().FullName,你正在看.Id,但这不是你在上面比较的.

所以说:问题是什么类型是具有一个.Id,那就是在东西tagsexistingTags.看看那个EqualsGetHashCode 那个.