我有一个比较两个不同代码库中生成的输出的项目。所以我必须在我的应用程序中使用两个具有相同名称的DLL。我创建了两个独立的类库,并将每个DLL添加到其中一个,然后将这些类库的引用添加到我的主项目中。当我调用第一个类库中的方法时,一切正常,并且正确选取其引用中指定的DLL。但是当调用第二个实例时,它会从第一个实例获取DLL路径,而不是该类库中引用的DLL路径。
如何防止此次碰撞?
答案 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#开发人员,所以如果我的语法稍微偏离,我会道歉。