Обзор помощника по обновлению .NET
Новые версии .NET выпускаются в течение года с основным выпуском один раз в год. Помощник по обновлению .NET помогает обновить приложения с предыдущих версий .NET, .NET Core и платформа .NET Framework до последней версии.
Помощник по обновлению .NET — это расширение Visual Studio и средство командной строки, предназначенное для обновления приложений до последней версии .NET.
Проблемы, связанные с помощником по обновлению .NET, можно подать в Visual Studio, выбрав команду "Отправить>отзыв о>проблеме".
Установка помощника по обновлению
Помощник по обновлению .NET можно установить как расширение Visual Studio или как средство командной строки .NET. Дополнительные сведения см. в разделе "Установка помощника по обновлению .NET".
Поддерживаемые языки
Поддерживаются следующие языки кода:
- C#
- Visual Basic
Поддерживаемые проекты
Поддерживаются следующие типы проектов:
- ASP.NET
- Функции Azure
- Windows Presentation Foundation
- Windows Forms
- Библиотеки классов
- Консольные приложения
- .NET Native UWP
- Xamarin Forms
- .NET MAUI
Варианты обновления
Поддерживаются следующие варианты обновления:
- платформа .NET Framework в .NET
- .NET Core в .NET
- UWP в WinUI 3
- Предыдущая версия .NET до последней версии .NET
- Функции Azure версии 1-v3 до изолированной версии 4
- Xamarin Forms в .NET MAUI
- Преобразования ФАЙЛОВ XAML поддерживают только обновление пространств имен. Для более комплексных преобразований используйте Visual Studio 2022 версии 17.6 или более поздней версии.
Обновление с помощью расширения Visual Studio
После установки расширения помощника по обновлению .NET щелкните правой кнопкой мыши проект в окне Обозреватель решений и выберите "Обновить".
Внимание
Убедитесь, что вы выполняете резервное копирование проектов перед обновлением, если вы не используете управление версиями.
Откроется вкладка, которая предоставляет различные стили обновления на основе типа проекта:
Обновление проекта на месте
Этот параметр обновляет проект без копирования.
Параллельное обновление проекта
Копирует проект и обновляет копию, оставляя исходный проект в одиночку.
Параллельное добавочное
Хороший выбор для сложных веб-приложений. Обновление с ASP.NET до ASP.NET Core требует довольно много работы и иногда ручной рефакторинг. Этот режим помещает проект .NET рядом с существующим проектом платформа .NET Framework и направляет конечные точки, реализованные в проекте .NET, а все остальные вызовы отправляются в приложение платформа .NET Framework.
Этот режим позволяет медленно обновлять ASP.NET или приложение библиотеки по частям.
После обновления приложения отобразится экран состояния, в котором отображаются все артефакты, связанные с проектом, связанными с обновлением. Каждый артефакт обновления можно развернуть, чтобы узнать больше о состоянии. В следующем списке описаны значки состояния:
- Заполнен зеленый проверка mark: артефакт был обновлен и успешно завершен.
- Незаполненные зеленые проверка mark: средство не нашли ничего о артефакте для обновления.
- Желтый знак предупреждения: артефакт был обновлен, но следует учитывать важные сведения.
- Red X: артефакт должен был быть обновлен, но обновление завершилось сбоем.
Кроме того, действия помощника по обновлению записываются в окно вывода в источник помощника по обновлению, как показано на следующем рисунке:
После обновления проекта необходимо тщательно протестировать его.
Обновление с помощью средства CLI
После установки средства командной строки помощника по обновлению .NET откройте окно терминала и перейдите в каталог, содержащий проект, который требуется обновить. Вы можете использовать команду, чтобы просмотреть доступные upgrade-assistant --help
параметры, предоставляемые CLI.
Внимание
Убедитесь, что вы выполняете резервное копирование проектов перед обновлением, если вы не используете управление версиями.
Запустите средство с upgrade-assistant upgrade
помощью команды, все проекты из текущей папки и ниже перечислены. Средство ИНТЕРФЕЙСА командной строки предоставляет интерактивный способ выбора проекта для обновления. Используйте клавиши со стрелками для выбора элемента и нажмите клавишу ВВОД , чтобы запустить элемент. Выберите проект, который требуется обновить. В примере, приведенном в этой статье, существует четыре проекта в текущей папке:
Selected options
───────────────────────────────────────────────────────────
No options specified, follow steps below to continue
Steps
─────────────────
Source project
─────────────────
Which project do you want to upgrade (found 9)?
> MatchingGame (winforms\MatchingGame\MatchingGame.csproj)
MatchingGame.Logic (winforms\MatchingGame.Logic\MatchingGame.Logic.csproj)
StarVoteControl (csharp\StarVoteControl\StarVoteControl.csproj)
WebSiteRatings (csharp\WebSiteRatings\WebSiteRatings.csproj)
Navigation
Exit
В зависимости от обновляемого проекта вы можете указать способ продолжения обновления:
Обновление проекта на месте
Этот параметр обновляет проект без копирования.
Параллельное обновление проекта
Этот параметр доступен только для платформа .NET Framework проектов. Копирует проект и обновляет копию, оставляя исходный проект в одиночку.
Selected options
──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
Source project C:\Code\winforms\MatchingGame\MatchingGame.csproj
Steps
───────────────────────────────
Source project / Upgrade type
───────────────────────────────
How do you want to upgrade project MatchingGame?
> In-place project upgrade
Side-by-side project upgrade
Navigation
Back
Exit
После этого шага, если существует несколько обновляемых целевых платформ, вы выберете целевой объект:
Selected options
──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
Source project C:\Code\Work\dotnet\dotnet-docs\docs\core\porting\snippets\upgrade-assistant-wpf-framework\winforms\MatchingGame\MatchingGame.csproj
Ugrade type Inplace
Steps
──────────────────────────────────────────────────
Source project / Ugrade type / Target framework
──────────────────────────────────────────────────
What is your preferred target framework?
> .NET 6.0 (Supported until November, 2024)
.NET 7.0 (Supported until May, 2024)
.NET 8.0 (Try latest preview features)
Navigation
Back
Exit
После обновления проекта необходимо тщательно протестировать его.
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по