是否可以区分具有相同完全限定名称的类型?

时间:2010-01-08 10:16:21

标签: c# vb.net namespaces

该场景是我希望能够引用两个类似的第三方程序集(例如,assem1和assem2),它们都定义了具有相同完全限定名称的类型(例如Example.MyType)。 有没有办法区分这些并单独引用它们?我相信答案是肯定的,但确认或纠正会很方便。

编辑:已回答C#2.0及更高版本,但需要在VB.Net 1.1中找到答案

2 个答案:

答案 0 :(得分:4)

您当然可以在C#中执行此操作 - 您需要使用extern aliases来指定每种情况下您需要的那个。 Anson Horton有walkthrough这很有用。

我不知道VB是否有类似的功能。

当然,如果你可以的话,值得避免这种情况:)

答案 1 :(得分:0)

也许我误解了这个问题;如果你想将它作为项目的一部分引用(例如在VS中),这对你没有帮助。但是,如果您需要在配置文件中引用类型或其他任何内容,则以下方法可行:

使用包含组合名称的完全限定名称(如果程序集名称较强,则最好),您可以区分它们。有关详细信息,请查看Type.AssemblyQualifiedName