Управление версиями для .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 поддерживаются в течение всего срока службы соответствующей среды выполнения в виде автономных установок.
Правила нацеливания и поддержки
Следующая политика определяет, в каких версиях 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 |