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

时间:2015-06-09 06:11:39

标签: c# asp.net .net dll

我需要同时在我的网站上运行两个版本的相同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中的任何函数时,它会抛出这样的错误

  

&#34;无法加载文件或程序集&#39; AWSSDK,Version = 2.3.41.0,Culture = neutral,PublicKeyToken = 9f476d3089b52be3&#39;或其中一个依赖项。定位的程序集的清单定义与程序集引用不匹配。 (HRESULT异常:0x80131040)&#34;:&#34; AWSSDK,Version = 2.3.41.0,Culture = neutral,PublicKeyToken = 9f476d3089b52be3&#34;

有谁可以请指出我在这里做错了什么?

1 个答案:

答案 0 :(得分:2)

此错误是因为您可能有不同版本的ddl,但命名空间将相同,并且您只能在项目中引用不同的命名空间。

要克服这一点, 为两个版本或者创建不同的命名空间 使用strong names for assemblies