Upgrade Assistant Теперь Поддерживает Обновление до CPM
.NET Upgrade Assistant помогает обновлять ваши решения до новых версий .NET. Про его возможности я уже писал тут и тут. Недавно в него добавили новый тип обновления до Централизованного Управления Пакетами (Central Package Management).
Независимо от того, обновляетесь ли вы с .NET Framework до .NET 8 или просто между версиями .NET, .NET Upgrade Assistant поможет понять, какие изменения необходимы, и автоматизирует многие из изменений. Он доступен как расширение Visual Studio или как инструмент командной строки.
Новейшая версия Upgrade Assistant представляет новый тип обновления, позволяющий вам преобразовать всё решение или выбранный набор проектов для использования Nuget Central Package Management (CPM).
Обновление в Visual Studio
Если Upgrade Assistant установлен как расширение в Visual Studio, щёлкните правой кнопкой мыши на узел проекта в обозревателе решений и выберите Upgrade (Обновить). Вы заметите новую функцию обновления проекта — Nuget Central Package Management (CPM).
На следующем экране вам будет предоставлена возможность также выбрать любое количество дополнительных проектов в вашем решении для обновления до CPM, но в большинстве случаев рекомендуется обновить все проекты в решении.
Далее будут предложены некоторые параметры настройки. Если вы также хотите преобразовать выбранные проекты в стиль SDK (используемый, начиная с .NET Core), вы можете установить флажок для этого параметра. По умолчанию веб-проекты не будут преобразованы в стиль SDK. Рекомендуется обновлять эти веб-проекты отдельно, но, если вы хотите включить их сюда, есть возможность сделать это, установив флажок «include web projects to SDK conversion» (включить преобразование веб-проектов в SDK).
Также будут предложены параметры управления пакетами в CPM. Рекомендуется (и по умолчанию включено) транзитивное закрепление (transitive pinning) и указан предлагаемый путь к папке, где будут храниться все централизованные версии пакетов. Кроме того, вы можете добавить JSON-файл конфигурации для определения этих параметров. Вот пример такого файла:
{
"upgrade": {
"settings": {
"cpm": {
"convertProjectsToSdkStyle": false,
"includeWebProjects": false,
"useTransitivePinning": true,
"rootPath": "somePath"
}
}
}
}Обновление в CLI
Вызовите Upgrade Assistant в командной строке, используя следующую команду в папке решения:
upgrade-assistant upgrade
Сначала будет предложено выбрать проект, который вы хотите обновить, но позже у вас будет возможность выбрать другие проекты и задать прочие параметры, аналогично обновлению в VS.
Источник: https://devblogs.microsoft.com/dotnet/dotnet-upgrade-assistant-cpm-upgrade/
