执行应用程序,它引用了多个不同版本
问题描述:
我创建一个测试项目比较EF4的性能EF5,我想能够为每个EF版本,其中引用了正确的EF版本独立的DLL组件,但我希望能够从单个可执行文件启动测试,此时这意味着我有2个位于我的exe目录中的EF dll副本,这是不好的。执行应用程序,它引用了多个不同版本
我明白,你能以某种方式在使用一种叫做探测一个DLL的多个版本,但我不太清楚如何实现它,没有任何人有这样一个代码示例?还是有更好的办法
答
我解决了这个用在我的app.config以下
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="EntityFramework" version="5.0.0.0"
publicKeyToken="b77a5c561934e089"
culture="neutral" />
<codeBase version="5.0.0.0" href="..\..\..\packages\EntityFramework.5.0.0-beta1\lib\net45\EntityFramework.dll" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="EntityFramework" version="4.1.0.0"
publicKeyToken="b77a5c561934e089"
culture="neutral" />
<codeBase version="4.1.0.0" href="..\..\..\packages\EntityFramework.4.1.10331.0\lib\EntityFramework.dll" />
</dependentAssembly>
</assemblyBinding>
</runtime>