Partager via


SDK .NET, MSBuild et contrôle de version Visual Studio

Le contrôle de version du Kit de développement logiciel (SDK) .NET et la façon dont il se rapporte à Visual Studio et MSBuild peut prêter à confusion. Versions MSBuild avec Visual Studio également incluses dans le SDK .NET. Le SDK a une version minimale de MSBuild et de Visual Studio avec laquelle il fonctionne, et il ne se charge pas dans une version de Visual Studio antérieure à cette version minimale.

Gestion de version

La première partie de la version du SDK .NET correspond à la version .NET qu’il inclut, sur laquelle il fonctionne et qu’il cible par défaut. La bande de fonctionnalités commence à 1 et augmente pour chaque version mineure de Visual Studio tous les trimestres. La version de patch incrémente avec les mises à jour de maintenance de chaque mois.

Par exemple, la version 7.0.203, fournie avec .NET 7, est la deuxième version mineure de Visual Studio depuis la version 7.0.100, et le troisième patch depuis la version 7.0.200.

Une installation de Visual Studio inclut une copie correspondante unique du Kit de développement logiciel (SDK) .NET. Si vous mettez à jour votre instance de Visual Studio, le Kit de développement logiciel (SDK) .NET installé par Visual Studio est également mis à jour, y compris entre les bandes de fonctionnalités du Kit de développement logiciel (SDK) .NET et les groupes principaux. Si vous souhaitez utiliser un kit SDK .NET différent de ce qui est installé par Visual Studio, vous pouvez l’installer à partir de la page de téléchargement .NET, et la mise à niveau de Visual Studio ne touchera pas cette version. Vous êtes responsable de la mise à jour de cette copie du Kit de développement logiciel (SDK) .NET à partir de là.

Remarque

Le Kit de développement logiciel (SDK) .NET prend en charge le ciblage des versions de bas niveau de .NET. Nous vous recommandons donc de toujours mettre à jour votre Kit de développement logiciel (SDK) .NET avec votre version de Visual Studio.

Cycle de vie

La période de prise en charge du SDK correspond généralement à celle de la version de Visual Studio qui l’inclut.

Développer pour voir les versions .NET sans prise en charge
Version du SDK Version MSBuild/Visual Studio Date d’expédition Cycle de vie
2.1.5xx 15,9 Novembre 2018 Août 2021
2.1.8xx 16.2 (sans VS) Juillet 2019 Août 2021
3.1.1xx 16.4 Décembre 2019 Octobre 2021
3.1.4xx 16.7 Août 2020 Décembre 2022
5.0.1xx 16.8 Novembre 2020 Mars 2021
5.0.2xx 16,9 Mars 2021 Mai 2022
5.0.3xx 16,10 Mai 2021 Août 2021
5.0.4xx 16.11 Août 2021 Mai 2022
6.0.1xx 17,0 Novembre 2021 24 novembre
6.0.2xx 17.1 Février 2022 Mai 2022
6.0.3xx 17.23 Mai 2022 Octobre 2023
6.0.4xx 17.3 Août 2022 24 novembre
7.0.1xx 17.4 Novembre 2022 Mai 24
7.0.2xx 17.53 Février 2023 Mai 2023
7.0.3xx 17.6 Mai 2023 Mai 24
7.0.4xx 17,7 Août 2023 Mai 24

Versions .NET prises en charge

Version du SDK Version MSBuild/Visual Studio Date d’expédition Cycle de vie
8.0.1xx 17.8 Novembre 2023 Novembre 251
8.0.2xx 17.93 Février 2024 24mai 3
8.0.3xx 17.10 Mai 24 À définir
8.0.4xx 17.11 Août 24 Novembre 252
9.0.1xx 17.12 24 novembre 26 mai1

Remarque

Le ciblage net6.0 est officiellement pris en charge dans Visual Studio 17.0+ uniquement. Le ciblage net7.0 est officiellement pris en charge dans Visual Studio 17.4+ uniquement. Le ciblage de net8.0 est officiellement pris en charge dans Visual Studio 17.8+ uniquement.

1 . Les bandes de fonctionnalités du SDK .1xx sont prises en charge tout au long du cycle de vie des principales versions de .NET. Pendant la période de support étendue, la prise en charge est limitée aux correctifs de sécurité et aux correctifs de sécurité à priorité élevée minimum pour Linux uniquement. Pour découvrir plus d’informations sur le raisonnement de ce support étendu, consultez Prise en charge de la génération source.

2Les bandes de fonctionnalités du SDK .NET .4xx sont prises en charge pendant la durée de vie du runtime correspondant en tant qu’installations autonomes.

3 8.0.200 nécessite une version plus récente de Visual Studio. Pour plus d’informations, consultez les règles de prise en charge.

Cycle de vie de Visual Studio 2019

Cycle de vie de Visual Studio 2022

Ciblage et règles de support

Une stratégie suivante détermine quelles versions de MSBuild et Visual Studio une version donnée du Kit de développement logiciel (SDK) .NET s’exécutera :

  • Chaque nouveau TargetFramework nécessite une nouvelle version de Visual Studio ou une nouvelle version de dotnet.
  • La première version de Visual Studio qui prend en charge un nouveau TargetFramework devient un plancher pour les bandes de fonctionnalités de ce Kit de développement logiciel (SDK) pour la surface de l’API Roslyn, les cibles MSBuild, les générateurs de source, les analyseurs, etc.
  • La première version d’un nouveau SDK .NET qui prend en charge un nouveau TargetFramework peut toujours être utilisée avec la version précédente de Visual Studio pour permettre un trimestre pour la migration des outils et de l’infrastructure (actions et pipelines, par exemple).
Kit SDK Version Visual Studio
fournie avec le SDK
Version minimale de Visual Studio TargetFramework max dans
version minimale de Visual Studio
TargetFramework max dans dotnet
6.0.200 17.1 17,0 Net6.0 Net6.0
6.0.300 17.2 17,0 Net6.0 Net6.0
6.0.400 17.3 17,0 Net6.0 Net6.0
7.0.100 17.4 17.3 Net6.0 Net7.0
7.0.200 17.5 17.4 Net7.0 Net7.0
7.0.300 17.6 17.41 Net7.0 Net7.0
7.0.400 17,7 17.4 Net7.0 Net7.0
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

Remarque

Le tableau montre comment ces règles de gestion de version sont appliquées, à partir du KIT SDK .NET 7.0.100 et du KIT SDK .NET 6.0.300. Il montre également comment la stratégie aurait été appliquée aux versions précédemment fournies du SDK .NET si elle avait été en place. Toutefois, les conditions requises pour les versions précédentes du kit de développement logiciel (SDK) ne changent pas, à savoir que la version minimale requise de Visual Studio pour le kit de développement logiciel (SDK) .NET 6.0.100 ou 6.0.200 reste la version 16.10.

1 Un changement cassant dans la version 7.0.300 pour le développement Blazor et Razor impose l’utilisation de Visual Studio version 17.6 ou ultérieure. Pour plus d’informations, consultez Problème dotnet/razor 8718.

Afin de garantir la cohérence des outils, vous devez utiliser dotnet build plutôt que msbuild pour générer votre application lorsque cela est possible.

Préversions

Les versions principales du SDK .NET sont généralement publiées quelques jours après une préversion de Visual Studio. Bien qu’il existe d’autres combinaisons qui fonctionnent, seule la dernière préversion publiée est testée et officiellement prise en charge. Le tableau suivant montre avec quelle version de Visual Studio chaque préversion de .NET a été testée avant d’être publiée.

Préversion du SDK Version Visual Studio
9.0.100 Préversion 1 17.10 Préversion 1
9.0.100 Préversion 2 17.10 Préversion 2
9.0.100 Préversion 3 17.10 Préversion 3
9.0.100 Préversion 4 17.11 Préversion 1
9.0.100 Préversion 5 17.11 Préversion 2
9.0.100 Préversion 6 17.11 Préversion 3
9.0.100 Préversion 7 17.12 Préversion 1
9.0.100 RC 1 17.12 Préversion 2
9.0.100 RC 2 17.12 Préversion 3
9.0.100 GA 17.12 GA

Référence