Как использовать PackageReference в качестве RestoreProjectStyle, как избежать автоматического наследования зависимостей / раскрытия типа? - PullRequest
0 голосов
/ 23 мая 2018
  • ProjectA ссылки ProjectB
  • ProjectB ссылки ProjectC
  • ProjectA имеет <RestoreProjectStyle>PackageReference</RestoreProjectStyle> в .csproj

Учитывая вышеизложенное, можно напрямую ссылаться на ProjectC типы в ProjectA.Это нежелательно, так как я не хочу вставлять типы в ProjectA.

Как можно избежать этого автоматического наследования зависимостей во время компиляции / раскрытия типа?

1 Ответ

0 голосов
/ 23 мая 2018

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

Если вы не хотите, чтобы некоторые типы создавались другими сборками, рассмотрите возможность использования internal конструкторов / типов (наряду с InternalsVisibleTo атрибуты сборки для тестирования) или анализаторы Roslyn для обеспечения соблюдения правил использования.

...