我正在创建一个 C# 库,并将向它公开一个 COM 接口(interface)。
我了解执行此操作所需的步骤,即
- 确保已分配 GUID,例如:
[程序集:Guid("dde7717b-2b75-4972-a4eb-b3d040c0a182")]
- 确保 COMVibile 属性为真
- 在类上放置一个 GUID 属性,例如
[GuidAttribute("4df74b15-d531-4217-af7e-56972e393904")]
- 使用 Regasm 注册。
我的问题是这样的。如果我定义了部分类。我是否需要将 GuidAttribute
添加到这两个类中?
事实上,考虑到这一点,我猜这个问题适用于任何属性(例如 Serializable
)。
如有任何帮助,我们将不胜感激。谢谢。
最佳答案
如果您将一个属性应用到同一个类两次(无论是在同一个文件中还是在两个不同的文件中),那么该类将应用该属性两次。在两个文件中定义的部分类不是两个类,它只是在多个文件中部分定义的一个类。所以,不,不要再在每个文件中重复 GuidAttribute。
关于C# 部分类和 COM 接口(interface),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2476814/