У меня есть решение, которое содержит основной проект .NET (настольное приложение WPF) и несколько библиотечных проектов (например, плагинов). Каждый из этих проектов содержит (не перекрывающиеся) ссылки на пакеты NuGet (устанавливаемые с помощью механизма PackageReference). Например:
WpfApplication
Рекомендации:
MaterialDesignThemes
MvvmValidation
System.Threading.Tasks.Dataflow
Plugin1
Ссылки:
Newtonsoft.Json
WpfApplication
(копия локальная = False)
Plugin2
Ссылки:
Accord.Video.FFMPEG
WpfApplication
(копия локальная = False)
Но когда я собираю Plugin1
, каталог сборки (подкаталог каталога сборки WpfApplication
) содержит объединение пакетов, на которые есть ссылки в WpfApplication
и Plugin1
(но не пакетов, определенных в Plugin2
) .
Аналогично, когда я собираю Plugin2
, каталог сборки (опять же, подкаталог каталога сборки WpfApplication
) содержит объединение пакетов, на которые есть ссылки в WpfApplication
и Plugin2
(но не пакеты, определенные в Plugin1
).
У меня не было этой проблемы со старым стилем packages.config
.
Эти дополнительные пакеты составляют> 100 файлов и ~ 15 МБ дискового пространства на каждый плагин! Как я могу предотвратить это?