使用具有相同名称但路径不同的DLL

时间:2014-12-15 01:42:52

标签: .net vb.net dll

我有一个比较两个不同代码库中生成的输出的项目。所以我必须在我的应用程序中使用两个具有相同名称的DLL。我创建了两个独立的类库,并将每个DLL添加到其中一个,然后将这些类库的引用添加到我的主项目中。当我调用第一个类库中的方法时,一切正常,并且正确选取其引用中指定的DLL。但是当调用第二个实例时,它会从第一个实例获取DLL路径,而不是该类库中引用的DLL路径。

如何防止此次碰撞?

1 个答案:

答案 0 :(得分:2)

您可以完全限定声明它们的内联名称,也可以在文件顶部的imports语句中使用别名。因此,如果您在Foo以及Namespace1.Some.Element中有一个班级Namespace2.Some.Element,则可以通过别名执行以下操作:

Imports alias1 = Namespace1.Some.Element
Imports alias2 = Namespace2.Some.Element

然后你会像这样使用它:

Dim myFoo1 as new alias1.Foo()
Dim myFoo2 as new alias2.Foo()

或者您可以使用完全限定的名称来执行此操作:

Dim myFoo1 as new Namespace1.Some.Element.Foo()
Dim myFoo2 as new Namespace2.Some.Element.Foo()

有关详细信息,请查看MSDN上的documentation

注意:我主要是一名C#开发人员,所以如果我的语法稍微偏离,我会道歉。

相关问题