由于各种原因,我需要在C#中实现一种类型缓存机制。幸运的是,CLR提供了Type.GUID
来唯一标识类型。不幸的是,我找不到任何根据此GUID查找类型的方法。有Type.GetTypeFromCLSID()
,但根据我的文档理解(和实验),它执行非常不同的操作。
除了遍历所有已加载的类型并比较它们的GUID之外,是否有其他方法可以根据其GUID获取类型?
编辑:我忘记提到我真的想要固定宽度的“类型指纹”,这就是为什么GUID对我如此吸引的原因。在一般情况下,当然可以使用类型的完全限定名称。
Type.FullName
(不包含程序集信息)作为其更小的表示形式。 - Rubens Farias