Поделиться через


Управление версиями для .NET SDK, MSBuild и Visual Studio

Управление версиями пакета SDK для .NET и его связь с Visual Studio и MSBuild могут быть запутанными. Версии MSBuild согласуются с Visual Studio, но также учитываются в пакете SDK для .NET. Пакет SDK имеет минимальную версию MSBuild и Visual Studio и не загружается в более ранней версии Visual Studio.

Управление версиями

Первая часть версии пакета SDK для .NET соответствует версии .NET, которую он включает, на которой он работает и для которой он предназначен по умолчанию. Диапазон функций начинается с 1 и увеличивается для каждого квартального дополнительного выпуска Visual Studio. Версия исправления увеличивается при каждом ежемесячном служебном обновлении.

Например, версия 7.0.203 поставляется с .NET 7, является вторым дополнительным выпуском Visual Studio с 7.0.100 впервые и является третьим исправлением с 7.0.200.

Установка Visual Studio включает в себя одну соответствующую копию пакета SDK для .NET. При обновлении экземпляра Visual Studio пакет SDK для .NET, установленный Visual Studio, также обновляется, в том числе в группах компонентов пакета SDK для .NET и основных группах. Если вы хотите использовать другой пакет SDK для .NET, отличный от того, что установлено Visual Studio, его можно установить на странице загрузки .NET, а обновление Visual Studio не будет касаться этой версии. После этого вы несете ответственность за обновление этой копии пакета SDK для .NET.

Примечание.

Пакет SDK для .NET поддерживает более ранние версии .NET, поэтому мы рекомендуем всегда обновлять его вместе с вашей версией Visual Studio.

Жизненный цикл

Срок поддержки пакета SDK, как правило, совпадает со сроком для версии Visual Studio, в которую он входит.

Развернитесь, чтобы просмотреть устаревшие версии .NET
Версия пакета SDK Версия MSBuild/Visual Studio Дата отгрузки Жизненный цикл
2.1.5xx 15,9 ноя 18 21 августа
2.1.8xx 16.2 (без VS) 19 июля 21 августа
3.1.1xx 16.4 Дек 19 21 октября
3.1.4xx 16.7 20 августа 22 декабря
5.0.1xx 16,8 Ноябрь '20 21 марта
5.0.2xx 16,9 21 марта Май '22
5.0.3xx 16,10 21 мая 21 августа
5.0.4xx 16.11 21 августа Май '22
6.0.1xx 17,0 Ноябрь '21 Ноябрь 24
6.0.2xx 17.1 Февраль '22 Май '22
6.0.3xx 17.23 Май '22 Октябрь 23
6.0.4xx 17.3 22 августа Ноябрь 24
7.0.1xx 17.4 Ноябрь '22 Май '24
7.0.2xx 17.53 Февраль '23 23 мая
7.0.3xx 17.6 23 мая Май '24
7.0.4xx 17,7 Август 23 Май '24

Поддерживаемые версии .NET

Версия пакета SDK Версия MSBuild/Visual Studio Дата отгрузки Жизненный цикл
8.0.1xx 17.8 Ноябрь '23 Ноябрь 251
8.0.2xx 17.9 Февраль '24 Май '24
8.0.3xx 17.10 Май '24 Подлежит уточнению
8.0.4xx 17,11 Август 24 Ноябрь 252
9.0.1xx 17.12 Ноябрь 24 26 мая
9.0.2xx 17.13 Февраль '25 26 мая
9.0.3xx 17.14 25 мая 26 мая

Примечание.

1 группы компонентов пакета SDK для .NET 1xx поддерживаются на протяжении всего жизненного цикла основных версий .NET. В течение расширенного периода поддержки поддержка ограничена исправлениями безопасности и минимальными исправлениями, не относящихся к безопасности, только для Linux. Дополнительные сведения об этой расширенной поддержке см. в статье о поддержке исходной сборки.

2 группы компонентов пакета SDK для .NET 4xx поддерживаются для жизни соответствующей среды выполнения как автономные установки.

Жизненный цикл Visual Studio 2019

Жизненный цикл Visual Studio 2022

Правила целевой и поддержки

Следующая политика определяет, в каких версиях MSBuild и Visual Studio будет выполняться определенная версия пакета SDK для .NET:

  • Для каждого нового TargetFramework требуется новая версия Visual Studio или новая dotnet версия.
  • Первая версия Visual Studio, поддерживающая новый TargetFramework, становится полом для групп компонентов этого пакета SDK для поверхности API Roslyn, целевых объектов MSBuild, генераторов источников, анализаторов и т. д.
  • Первая версия нового пакета SDK для .NET, поддерживающая новый TargetFramework, по-прежнему может использоваться с предыдущей версией Visual Studio, чтобы разрешить переносить один квартал для инструментов и инфраструктуры (например, действий и конвейеров).
SDK Версия Visual Studio
Пакет SDK поставляется с
Минимальная версия Visual Studio Max TargetFramework in
минимальная версия Visual Studio
Max TargetFramework in dotnet
8.0.100 17.8 17,7 Net7.0 Net8.0
8.0.200 17.9 17.8 Net8.0 Net8.0
8.0.300 17.10 17.8 Net8.0 Net8.0
8.0.400 17,11 17.8 Net8.0 Net8.0
9.0.100 17.12 17,11 Net8.0 Net9.0
9.0.200 17.13 17.12 Net9.0 Net9.0
9.0.300 17.14 17.12 Net9.0 Net9.0

Примечание.

В таблице показано, как применяются эти правила управления версиями, начиная с пакета SDK для .NET 7.0.100 и пакета SDK для .NET 6.0.300. В нем также показано, как политика будет применена к ранее отправленным версиям пакета SDK для .NET, если бы она была на месте. Однако требования для предыдущих версий пакета SDK не изменяются. То есть минимальная требуемая версия Visual Studio для пакета SDK для .NET 6.0.100 или 6.0.200 остается 16.10.

Целевая ориентация net8.0 официально поддерживается только в Visual Studio 17.8 и более поздних версий.

Поддержка таргетинга net9.0 официально осуществляется только в Visual Studio 17.12+.

Чтобы обеспечить согласованность инструментов, следует использовать dotnet build вместо msbuild того, чтобы создавать приложение по возможности.

Предварительная версия

Основные версии пакета SDK для .NET обычно выпускаются в течение нескольких дней после предварительной версии Visual Studio. Хотя существуют и другие сочетания, которые работают, тестируются и официально поддерживаются только последние предварительные версии. В следующей таблице показано, какая версия Visual Studio для каждой предварительной версии .NET была протестирована до выпуска.

Предварительная версия пакета SDK Версия Visual Studio
9.0.100 RC 1 17.12 Предварительная версия 2
9.0.100 RC 2 17.12 Предварительная версия 3
9.0.100 GA 17.12 GA
10.0.100 Предварительная версия 1 17.14 Предварительная версия 1

Справочные материалы