Выполнение приложения, которое ссылается на несколько разных версий сборки
Я создаю тестовый проект для сравнения производительности EF4 с EF5, и я хочу иметь возможность иметь отдельную DLL для каждой версии EF, которая ссылается на правильную версию EF, но я хочу иметь возможность запускать тесты из одного исполняемого файла, на данный момент это будет означать, что у меня есть 2 копии EF dll, которые находятся в моем каталоге exe, что не годится.
Я понимаю, что вы можете каким-то образом иметь несколько версий DLL, используя то, что называется зондирование, но я не слишком уверен, как это реализовать, у кого-нибудь есть пример этого кода? или есть лучший способ
1 ответ
Решение
Я решил это с помощью следующего в моем 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>