我们可以在没有COM的情况下在.NET中使用TypeIdentifierAttribute吗?

时间:2010-07-20 13:42:36

标签: c# vb.net c#-4.0 vb.net-2010

我很好奇是否可以使用新的TypeIdentifierAttribute属性在.NET中创建2个接口(在同一个程序集中或在单独的程序集中),可以将它们视为等效。我还没找到办法。

我在互联网上看到过一些建议最终会有可能的东西,但有点看起来当前的实现仅适用于COM互操作。我理解这个的直接意图是嵌入COM interops。我不是在处理COM互操作。

另外,我不想讨论为什么要这样做,我不想把这个问题引向其他类型的解决方案。我们只是说我正在尝试,我想知道我们是否可以使用TypeIdentifierAttribute做任何事情。

1 个答案:

答案 0 :(得分:3)

根据documentationanecdotal evidence,可以使类型等价与标准的非COM接口一起工作。

从文档中,如果您的接口位于不同的程序集中,您似乎不需要TypeIdentifierAttribute。要将两个接口视为等效接口,您只需:

  1. 确保它们都具有相同的名称,并且位于相同的命名空间中。
  2. GuidAttribute同时应用于他们,并为他们指定相同的Guid。