У меня есть проект, над которым я работаю, который требует использования Mysql Connector для NHibernate (Mysql.Data.dll). Я также хочу сослаться на другой проект (Migrator.NET) в том же проекте. Проблема в том, что, хотя Migrator.NET создается со ссылкой на MySql.Data с определенной версией = false, он все равно пытается ссылаться на более старую версию MySql.Data, с которой была построена библиотека, вместо того, чтобы просто использовать версию, которая существует .. и я получаю исключение, указанное в заголовке:
----> System.IO.FileLoadException: не удалось загрузить файл или сборку
MySql.Data, версия = 1.0.10.1,
Culture = нейтрально,
PublicKeyToken = c5687fc88969c44d 'или
одна из его зависимостей. Расположенный
определение манифеста сборки делает
не совпадает со ссылкой на сборку.
(Исключение из HRESULT: 0x80131040)
Версия, на которую я ссылаюсь в основной сборке, - 6.1.3.0. Как заставить эти две сборки сотрудничать?
Edit:
Для тех из вас, кто указывает перенаправление привязки сборки, я настроил это:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="MySql.Data" publicKeyToken="c5687fc88969c44d" culture="neutral"/>
<bindingRedirect oldVersion="0.0.0.0-6.1.3.0" newVersion="6.1.3.0"/>
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>
Я ссылаюсь на эту основную сборку в другом проекте и все еще получаю те же ошибки. Если моя основная сборка будет скопирована локально для использования в другой сборке, будет ли она использовать параметры в app.config или эта информация должна быть включена в каждое приложение или сборку, которая ссылается на мою основную сборку?