可能是重复问题:
自动生成的.NET类型GUID一致吗?
我想将 Type
作为字典的键,但我更愿意使用完整类型名称或 Type.GUID
。 Type.GUID
在这种情况下可靠和正确吗?
Ayende Rahien 写道:
你能依赖 System.Type.GUID 的稳定性吗?
通过“稳定”,我指它会在编译过程中为相同类型生成相同的值。经验证明,一个类型的 GUID 取决于以下因素:
- 类型名称(包括命名空间)
- 程序集名称
- 程序集公钥
反射到系统,发现 System.Type.GUID 最终转换为调用 System.RuntimeType.GetGUID,这是运行时本身直接实现的一种可怕的 InternallCall 方法。
我在想...