Redirect для файлов DLL пакета Nuget - PullRequest
0 голосов
/ 12 февраля 2019

Я хотел бы использовать пакет Nuget Microsoft.CodeAnalytics в новейшей версии
Если я создаю решение, возникают проблемы, связанные с различными версиями библиотек DLL, которые являются частью .NET Framework

Дляпример:

Zwischen "Ссылка: System.IO.FileSystem, Версия = 4.0.2.0, Культура = нейтральная, PublicKeyToken = b03f5f7f11d50a3a, processorArchitecture = MSIL" и "Ссылка: System.IO.FileSystem" istЭйн Конфликт Aufgetreten."Ссылка: System.IO.FileSystem wird ausgewählt, da AssemblyVersion" 4.0.3.0 "höher ist als" 4.0.2.0 ". (Aufgaben-ID: 19)

Ссылочные сборки можно найти взагруженные пакеты Nuget, поставляемые с Microsoft.CodeAnalytics.
При сборке библиотеки не копируются локально. Если я разверну приложение таким образом, программа выдаст исключения, поскольку не может найти ссылки на сборки.

Решениебыло бы заставить dll искать последнюю версию, но я не знаю, как это сделать.
В app.config перенаправление записано.

<assemblyIdentity name="System.IO.FileSystem" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.0.3.0" newVersion="4.0.3.0" />

Если я попытаюсь запуститьприложение, подобное этому, по-прежнему выдает ошибки, потому что не может найти .dll в версии 4.0.2.0 при вызове классов пакета CodeAnalytics.

Как получить Visual Studio / msbuild для локального копирования файлов, дажеесли есть версии файлов выше .NET Framework или как я могу заставить dll искать правильную версию другой dll?

1 Ответ

0 голосов
/ 12 февраля 2019

Вы можете принудительно включить dll: В обозревателе решений в разделе «Ссылки» проекта, в который включен CodeAnalysis, щелкните правой кнопкой мыши на dll, выберите «Свойства», в окне «Свойства» измените «Копировать локальный» на true.

Что происходит, когда вы изменяете app.config, удаляя элемент bindingRedirect?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...