我需要运行相同的Dll的两个版本同时在我的网站上运行。所以我在Bin中创建了一个文件夹,并显示了第二个Dll路径,像这样
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="AWSSDK" culture="neutral" publicKeyToken="9f476d3089b52be3"/>
<codeBase version="2.3.40.0" href="FILE://E://Live /bin/V-2/AWSSDK.dll"/>
</dependentAssembly>
</assemblyBinding>
并将我的第一个DLL添加为普通的bin文件夹。但是当我试图访问AWSSDK 2.3 Dll中的任何函数时,它会抛出这样的错误
谁能指出我在这里做错了什么?"无法加载文件或程序集'AWSSDK, Version=2.3.41.0, Culture=neutral, PublicKeyToken=9f476d3089b52be3'或其依赖项之一。"定位的程序集的清单定义与程序集引用不匹配。(异常来自HRESULT: 0x80131040):"AWSSDK, Version=2.3.41.0, Culture=neutral, PublicKeyToken=9f476d3089b52be3"
这个错误可能是因为你有不同版本的ddl,但它们的命名空间是相同的,你只能在你的项目中引用不同的命名空间。
为了克服这个问题,为两个版本创建不同的名称空间,或者