Создайте пакет NuGet, который устанавливает ссылки с Copy Local, установленным на false
Есть ли способ создать пакет NuGet, где, когда пакет установлен в проект, он добавляет ссылки на DLL с "Скопировать локальную" на false?
Я предполагаю, что это будет какой-то script в файле 'install.ps1'.
Ответ 1
Да, вы можете сделать это с помощью install.ps1, как вы уже догадались.
Вот пример install.ps1, который будет переворачивать флаг в System.dll каждый раз при его запуске. Вы должны иметь представление о том, как сделать то, что вы хотите, используя этот пример:
Я думаю, что этот install.ps1 делает то, о чем вы просите - всем DLL, добавленным пакетом, присваивается значение Локальное копирование false. Обратите внимание, что здесь я ничего не делаю с списком AssemblyReferences, кроме как получать из него все имена - вам может понадобиться сделать что-то еще, если вам нужны условия на основе целевой структуры и т.д.