是为.net一致类型自动生成的guid

本文关键字:自动生成 guid 类型 net 是为 | 更新日期: 2023-09-27 17:49:52

c#类型自动生成的guid是否一致?例如,如果我在第一次运行程序时获得接口IFoo (typeof(IFoo).GUID)的GUID,那么每次运行该程序时都会获得相同的GUID吗?

我已经在我的机器上进行了本地测试,它似乎总是相同的,但我不确定我是否可以依赖它在机器上总是相同的。

是为.net一致类型自动生成的guid

参见:System.Type.GUID稳定性。该方法的当前实现似乎依赖于CLR本身实现的内部调用。除非微软澄清了自动生成指南的契约( Type.GUID 文档目前对这个问题保持沉默),否则我不会依赖观察到的行为。为了确保一致性,我建议使用 GuidAttribute .

显式地装饰相关类型。

没有文档记录,所以我不会完全依赖它们,说将来实现可能会也可能不会改变。