У меня возникла проблема с .NET Core (2.2), которую я, вероятно, мог бы решить, если бы мог выполнять перенаправления привязки.
У меня есть 2 проекта в решении (ну, есть и другие,но они не имеют отношения):
Проект 1 ссылается на стороннюю DLL, назовем ее ThirdPartyABC.dll
.
Проект 2 ссылается на другую стороннюю DLL от той же компании, назовем ее ThirdPartyXZY.dll
Проблема заключается в том, что ThirdPartyABC.dll
также включает в себя и ссылается на копию ThirdPartyXYZ.dll
-но «неправильная» версия (и более высокая версия).
Изначально они были установлены Nuget.В настоящее время у меня есть ссылки на двоичные файлы в попытке решить эту проблему.
MsBuild выдает мне ошибку MSB3277 "обнаруженные конфликты", а подробное ведение журнала показывает, что она действительно пытается использовать более высокую версию.Если я полностью удаляю более высокую версию и оставляю только более низкую версию, я получаю ошибку времени выполнения («не удалось загрузить файл или сборку»), как вы могли ожидать.Если я оставлю более высокую версию на месте, то, конечно, это версия, которая копируется в каталог bin, и это не то, что я хочу.
Мне нужен способ заставить сборку использоватьверсию, которую я хочу использовать, а не версию выше.Я думаю, что перенаправление привязки решило бы проблему, но в .NET Core это, похоже, не так ...
Буду благодарен за любые предложения.