Я перевожу проект MsBuild csproj старого стиля в формат PackageReference и столкнулся с проблемой транзитивных зависимостей.
Рассмотрим следующее
Проект A ссылочные пакеты NuGet B и C, каждый из которых содержит одну отдельную сборку с использованием PackageReference.
В проекте сборки A используется объединение IL для включения B в качестве общедоступных символов в сборку A и C в качестве интернализованных символов.
Проект D имеет ссылку на проект A.
В случае переходных зависимостей D к ссылкам A, B и C.
При сборке D, ошибки компиляции типа
ошибка CS0433: тип «X» существует как в «A», так и в «B»
происходят.
Есть ли способ заставить D не добавлять явную ссылку на B или C в сценарии выше?