在C#中的类上面出现的Guid属性是什么?

我最近选择了一些C#代码,其中一个类上面有一个Guid属性。 我不明白这是什么或它用于什么。

有人可以给我一个简要的概述,或者只是指向一些提供更多相关信息的文章?

谢谢!

它是表示相关类的COM标识符。 该类是为COM互操作而设计的。

您可能需要查看ComVisibleAttribute类,以了解有关使托管类可用于非托管代码的方法的更多信息。

[Guid]与.NET Type.AssemblyQualifiedName完全等效。 喜欢

System.Object, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5561934e089 

明显的区别是.NET类型名称更容易被人类阅读。 有必要允许程序发现需要加载哪些DLL才能使用类型。 在.NET的情况下,通常通过枚举GAC找到程序集。 它是基于文件的。

但是COM使用注册表。 在您看到的源代码构建并注册的程序集之后,您可以在注册表中找回[Guid]。 启动regedit.exe并导航到HKLM\Software\Classes\CLSID\{guid} 。 您将看到运行时用于加载CLR和程序集的注册键值。

Guid(全球唯一标识符)用于识别外部世界的组件。 当您编写将用作COM(组件对象模型)的项目时,您将必须提供唯一的名称。 因此,您需要应用GUID属性。

你可以在这里读更多关于它的内容。

GUIDAttributeClass