исключение загрузки файла .net: nuget .net стандарт 1.6 против клиента .net40 - PullRequest
0 голосов
/ 17 января 2019

У меня есть проект А, библиотека стандарта .net 2.0, и проект B (Консольное приложение 4.5 .net framework), который ссылается на проект A.

Я добавил библиотеку C (FParsecCS 1.03) через nuget как в проект A, так и в проект B.

Проект A и проект B компилируются.

При запуске я получаю:

System.IO.FileLoadException could not load library C  or one of its dependencies. The located assembly's manifest does not match the assembly reference.

Файл FParsecCS.dll находится в каталоге bin \ debug!

Как я могу решить это? Я не думаю, что мне нужно делать какое-либо перенаправление.

Я удалил библиотеку, закрыл решение, снова открыл решение, заново собрал, и проблема осталась.

Работа вокруг :

Я нашел обходной путь, если я перехожу в папку пользователя .nuget \ packages \ library C \ lib \ netstandadrd1.6 и копирую dll в bin \ debug исполняемого файла, с которым он работает.

По умолчанию кажется, что он копирует lib \ net40-client? как я могу заставить его копировать и использовать .netstandard1.6?

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