Ошибка перенаправления привязки - разные publicKeyToken
у меня есть приложение, которое ссылается на эту сборку в средах разработки:
name="Microsoft.Data.SqlXml" culture="neutral" publicKeyToken="89845dcd8080cc91" version="9.0.242.0"
однако live server содержит старую версию этой библиотеки:
name="Microsoft.Data.SqlXml" culture="neutral" publicKeyToken="b77a5c561934e089" version="3.2.2917.0"
как вы видите publicKeyToken отличается. Я добавил bindingRedirect в приложение.config:
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="Microsoft.Data.SqlXml" culture="neutral" publicKeyToken="89845dcd8080cc91" />
<bindingRedirect oldVersion="9.0.242.0" newVersion="3.2.2917.0"/>
</dependentAssembly>
</assemblyBinding>
</runtime>
но я все равно получаю ошибку:
Необработанное Исключение: Система.ИО.FileNotFoundException: не удалось загрузить файл или задница embly ' Microsoft.Данные.В sqlxml, Версия=3.2.2917.0, Культура = нейтральная, PublicKeyToke n=89845dcd8080cc91 ' или одна из ее зависимости. Система не может найти указанный файл. Имя файла: 'Майкрософт.Данные.SqlXml, версия=3.2.2917.0, культура=нейтральный, PublicKe система yToken=89845dcd8080cc91' - - ->.ИО.Исключение Filenotfoundexception: Не Могли Бы не загружать файл fi или сборку " Microsoft.Данные.SqlXml, Версия=9.0.242.0, Культура=нейтральная, Publi cKeyToken=89845dcd8080cc91 ' или один из ее зависимости. Система не может найти указанный файл. Имя файла: 'Майкрософт.Данные.SqlXml, версия=9.0.242.0, культура=нейтральный, PublicKey Знак=89845dcd8080cc91'
есть ли способ, чтобы перенаправить на более старую версию библиотеки в этом случае?
1 ответов
вы не можете перенаправить сборку, если открытый ключ отличается, я боюсь, вам нужно будет перекомпилировать старую версию и удалить перенаправление.