Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
В этой статье описывается планирование и выполнение обновлений приложений .NET. Он помогает оценить текущее приложение, выбрать правильный путь обновления, использовать доступные средства и проверить обновленное приложение. Используйте рекомендации по обновлению с .NET Framework до современных .NET, переход к последнему выпуску .NET или модернизации приложения для облака и контейнеров.
Когда необходимо обновить
Рассмотрите возможность обновления, когда бизнес-сигналы или технические сигналы показывают четкое значение:
- .NET или другие зависимости достигают окончания срока поддержки.
- Обнаружены новые уязвимости безопасности или необходимо соответствовать новым требованиям соответствия.
- Вы сталкиваетесь с ограничениями производительности или масштабируемости, которые устраняются в более новых версиях .NET.
Обновление также является хорошей возможностью модернизировать приложение. Например, вы можете контейнеризировать приложение, переместить компонент в облачную службу или применить шаблоны облака, которые повышают надежность и работоспособность. Обновление также повышает производительность разработчиков, позволяя создавать новые пакеты SDK, шаблоны и языковые функции, упрощающие разработку и сокращение обслуживания.
Определите приоритеты обновлений по рискам и возврату: выполните целевую оценку, пилотируйте изменения в проекте с низким риском и используйте результаты для планирования более широких миграций.
жизненный цикл выпуска .NET
.NET ежегодно выпускает новую мажорную версию, чередуя выпуски со стандартным сроком поддержки (STS) и долгосрочной поддержкой (LTS). Каждый выпуск имеет определенное окно поддержки, после которого он больше не получает обновления безопасности и качества. Запланируйте срок обновления по следующим датам, чтобы приложения оставались в поддерживаемой версии:
- Выпуски LTS поддерживаются в течение трех лет и являются типичным выбором для рабочих приложений, которые предпочитают стабильность.
- Выпуски STS поддерживаются в течение 18 месяцев и полезны, если вы хотите раньше внедрить новые функции.
Сведения о поддерживаемых версиях, датах окончания поддержки и рекомендациях по установке исправлений см. в разделе Выпуски .NET, исправления и поддержка и в документе Политика поддержки .NET и .NET Framework.
SDK .NET может быть нацелен на более ранние версии .NET, что может понадобиться, если вы развертываете приложение в службе хостинга, которая еще не поддерживает последнюю версию среды выполнения. Следите за актуальностью средств разработчика, так как каждый выпуск устраняет уязвимости системы безопасности и добавляет совместимость с новыми технологиями.
Выбор пути обновления
Большинство обновлений попадают в одну из следующих категорий. Начните с инструкций, которые соответствуют вашему сценарию, а затем используйте инструменты, описанные далее в этой статье, чтобы выполнить эту работу.
Переход с .NET Framework на современную платформу .NET
Перенесите приложения .NET Framework, работающие только в Windows, на кроссплатформенную платформу .NET. Модель приложения, формат проекта и некоторые api-интерфейсы изменяются, и вам может потребоваться заменить технологии, недоступные в современных .NET. Обзор изменений и сведения о том, как спланировать перенос, см. в разделе Обзор переноса из .NET Framework в .NET. Связанные рекомендации:
Из предыдущих версий .NET в последнюю версию .NET
Переход от устаревшей или более старой версии .NET к текущему выпуску. Эти обновления обычно менее масштабны и в основном касаются обновлений целевого фреймворка, зависимостей и ломающих изменений. Просмотрите изменения .NET, нарушающие совместимость, для версий, через которые вы переходите.
Модернизация после обновления
После того как ваше приложение будет собрано и запущено в современной версии .NET, воспользуйтесь новыми подходами, такими как конфигурация
appsettings.json, внедрение зависимостей и современные элементы управления для веб- и настольных приложений. Идеи и пошаговые инструкции см. в статье Модернизация после перехода с .NET Framework на .NET.Переход в облако
Контейнеризируйте приложение, замените локальные компоненты управляемыми службами и внедряйте облачные шаблоны для надежности и наблюдаемости.
Модернизация приложения GitHub Copilot (рекомендуется)
Агент GitHub Copilot для модернизации приложений обеспечивает сквозной процесс с поддержкой ИИ, который ускоряет перенос приложений и их модернизацию. Агент анализирует проект и записывает план для завершения требуемого обновления. Вы можете настроить и выполнить итерацию по плану, а затем выполнить обновления. С помощью этого агента можно:
- Обновите проекты до более новой версии .NET.
- Оцените код, конфигурацию и зависимости приложения.
- Перенос проектов из старых версий .NET в последний выпуск.
- Перенесите технологии, от которых зависит ваше приложение, в Azure.
- Планирование и подготовка нужных ресурсов Azure.
- Устранение проблем и применение рекомендаций по миграции в облако.
- Убедитесь, что ваше приложение собирается и тесты проходят успешно.
Используйте агент, если вам нужен пошаговый процесс с рекомендациями на базе ИИ для оценки, исправления и модернизации кодовых баз, особенно для проектов с большим количеством зависимостей, использующих API Windows, а также для проектов, которые вы планируете контейнеризировать или мигрировать в облако. Для получения дополнительной информации см. Что такое модернизация приложений с помощью GitHub Copilot.
Помощник по обновлению .NET (устаревший)
.NET Помощник по обновлению — это расширение Visual Studio и средство CLI, которое анализирует проект и применяет распространенные изменения обновления. Он официально признан устаревшим в пользу агента модернизации приложений GitHub Copilot и больше не разрабатывается активно. Используйте его только в том случае, если не удается использовать агент модернизации, например, если у вашей среды нет доступа к GitHub Copilot. Новые задачи следует вместо этого ориентировать на агент модернизации.