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


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

Управление версиями пакета SDK для .NET и его связь с Visual Studio и MSBuild могут быть запутанными. Версии MSBuild входят в состав Visual Studio, но также включены в .NET SDK. Пакет 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 Ноябрь 2021 г. Ноябрь 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 Ноябрь 2022 Май '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 26 ноября1
8.0.2xx 17.9 Февраль '24 Май '24
8.0.3xx 17.10 Май '24 Январь '26
8.0.4xx 17,11 Август 24 26 ноября2
9.0.1xx 17.12 Ноябрь 24 26 мая
9.0.2xx 17.13 Февраль '25 25 мая
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 Максимальный TargetFramework
минимальная версия Visual Studio
Максимальная цель фреймворка в 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. В нем также показано, как политика применялась бы к уже отправленным версиям .NET SDK, если бы она действовала тогда. Однако требования для предыдущих версий пакета 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
10.0.100 Предварительная версия 2 17.14 Предварительная версия 2
10.0.100 Предварительная версия 3 17.14 Предварительная версия 3

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