Обновление пакетов nuget во всех проектах в решении
У меня есть решение .net(скажем, A) с несколькими проектами (скажем, B, C, D). Я хочу обновить все пакеты nuget для всех проектов в решении. Я знаю, что я могу обновлять пакеты nuget с помощью командной строки, но передавая путь к packages.config
nuget update A/B/packages.config
Есть ли способ обновлять пакеты для всех пакетов .configs внутри папки A, используя командную строку, не указывая отдельно? (Я знаю, что это можно сделать изнутри визуальной студии.)
Что-то вроде
nuget update A/*/packages.config
Ответы
Ответ 1
Как указано в Документация NuGet, вы можете ввести:
Update-Package
Это будет:
Обновить все пакеты во всех проектах текущего решения последние версии.
Чтобы открыть консоль диспетчера пакетов:
Инструменты > Диспетчер пакетов NuGet > Консоль диспетчера пакетов
Теперь, чтобы иметь только один экземпляр всех пакетов, у меня есть в папке моего решения файл с именем nuget.config
, который содержит:
<configuration>
<config>
<add key="repositoryPath" value="..\Path\To\My\Packages" />
</config>
</configuration>
Вам может потребоваться перезагрузить решение, чтобы он работал правильно.
Ответ 2
Вы использовали примеры командной строки, но ваш вопрос не указывает, требуется ли вам ответ командной строки. Если вам не нужна командная строка, вы можете щелкнуть правой кнопкой мыши свое решение в обозревателе решений и выбрать "Управление пакетами NuGet для решения" ... Это отображает диалоговое окно, в котором вы можете сделать свой выбор. Кроме этого, вам все равно нужно написать script в этот момент времени (насколько мне известно).
Ответ 3
Сначала вам нужно восстановить все пакеты с помощью nuget restore solution_file.sln
, а затем обновить их до последней версии, выполнив nuget update solution_file.sln
.
Подробнее о командной строке nuget