在Asp.Net中并行运行同一个Dll的两个版本

本文关键字:版本 两个 Dll Net Asp 并行 同一个 运行 | 更新日期: 2023-09-27 17:54:36

我需要运行相同的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"

谁能指出我在这里做错了什么?

在Asp.Net中并行运行同一个Dll的两个版本

这个错误可能是因为你有不同版本的ddl,但它们的命名空间是相同的,你只能在你的项目中引用不同的命名空间。

为了克服这个问题,为两个版本创建不同的名称空间,或者