Предупреждение. Обнаружены конфликты между разными версиями одной и той же зависимой сборки. - PullRequest
307 голосов
/ 20 августа 2008

В настоящее время я занимаюсь разработкой приложения .NET, которое состоит из 20 проектов. Некоторые из этих проектов скомпилированы с использованием .NET 3.5, другие все еще являются проектами .NET 2.0 (пока проблем нет).

Проблема в том, что если я включаю внешний компонент, я всегда получаю следующее предупреждение:

"Found conflicts between different versions of the same dependent assembly".

Что именно означает это предупреждение, и есть ли возможность исключить это предупреждение (например, используя #pragma disable в файлах исходного кода)?

Ответы [ 17 ]

1 голос
/ 20 ноября 2014

Также имелась эта проблема - в моем случае это было вызвано тем, что свойство «Конкретная версия» для ряда ссылок установлено в true. Изменение этого значения на false для этих ссылок решило проблему.

0 голосов
/ 01 июня 2019

При использовании NuGet все, что мне нужно было сделать, это:

  1. щелкните правой кнопкой мыши проект и выберите Управление пакетами NuGet ..

  2. нажмите на винтик в правом верхнем углу

  3. щелкните вкладку Общие в диспетчере пакетов NuGet над источниками пакетов

  4. отметьте «Пропустить применение перенаправлений привязки» в «Переадресации привязок»

  5. Очистить и восстановить, и предупреждение исчезло

Легкий горох

0 голосов
/ 05 апреля 2019

У меня была такая проблема, когда в моем проекте была ссылка на NETStandardLibrary, и для netcore была опубликована одна из ссылочных сборок. Просто опубликовал его как netstandard и проблема исчезла

0 голосов
/ 13 марта 2018

Кажется, проблема в Mac Visual Studio при редактировании файлов .resx. Я действительно не знаю, что случилось, но у меня возникла эта проблема, как только я отредактировал некоторые файлы .resx на моем Mac. Я открыл проект в Windows, открыл файлы, и они были, как будто они не были отредактированы. Поэтому я отредактировал их, сохранил, и все снова заработало на Mac.

0 голосов
/ 09 октября 2017

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

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

Это случилось со мной тоже. На одну DLL ссылались дважды: один раз напрямую (в ссылках) и один раз косвенно (ссылался на другой ссылочный проект) Я удалил прямую ссылку, почистил и восстановил решение. Проблема устранена.

0 голосов
/ 15 июня 2014
  1. Откройте «Обозреватель решений».
  2. Нажмите «Показать все файлы»
  3. Развернуть "Рекомендации"
  4. Вы увидите одну (или более) ссылку (-и) со значком немного отличающимся от остальных. Как правило, это с желтой рамкой, предлагающей вам принять к сведению. Просто удали его.
  5. Добавьте ссылку назад и скомпилируйте ваш код.
  6. Вот и все.

В моем случае возникла проблема со ссылкой на MySQL. Так или иначе, я мог бы перечислить три его версии под списком всех доступных ссылок; для .net 2.0, .net 4.0 и .net 4.5. Я следовал процессу с 1 по 6 выше, и он работал для меня.

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