.NET SDK-, MSBuild- und Visual Studio-Versionsverwaltung
Die Versionsverwaltung des .NET SDK und seine Beziehung zu Visual Studio und MSBuild kann schwer verständlich sein. MSBuild wird mit Visual Studio versioniert, ist aber auch im -NET SDK enthalten. Das SDK verfügt über eine Mindestversion von MSBuild und Visual Studio, mit der es funktioniert, und es wird nicht in einer Version von Visual Studio geladen, die älter als diese Mindestversion ist.
Versionskontrolle
Der erste Teil der .NET SDK-Version entspricht der .NET-Version, die es enthält, in der es ausgeführt wird und für die es standardmäßig vorgesehen ist. Die Featuregruppe beginnt bei 1 und wird für jede vierteljährliche Visual Studio-Nebenversion heraufgesetzt. Die Patchversion wird mit den Wartungsupdates jedes Monats heraufgesetzt.
Beispiel: Version 7.0.203 wird mit .NET 7 veröffentlicht, ist die zweite Visual Studio-Nebenversion, wurde seit 7.0.100 zum ersten Mal veröffentlicht und ist der dritte Patch seit der Veröffentlichung von 7.0.200.
Lebenszyklus
Der Supportzeitrahmen für das SDK entspricht in der Regel der Visual Studio-Version, in dem es enthalten ist.
Erweitern, um nicht mehr unterstützte .NET-Versionen anzuzeigen
SDK-Version | MSBuild-/Visual Studio-Version | Auslieferungsdatum | Lebenszyklus |
---|---|---|---|
2.1.5xx | 15,9 | Nov. 18 | Aug. 21 |
2.1.8xx | 16.2 (kein VS) | Juli 19 | Aug. 21 |
3.1.1xx | 16.4 | Dez. 19 | Okt. 21 |
3.1.4xx | 16.7 | Aug. 20 | Dez. 22 |
5.0.1xx | 16.8 | Nov. 2020 | Mär. 21 |
5.0.2xx | 16,9 | März. 21 | Mai 2022 |
5.0.3xx | 16.10 | Mai 21 | Aug. 21 |
5.0.4xx | 16.11 | Aug. 21 | Mai 2022 |
7.0.1xx | 17.4 | Nov. 2022 | Mai 2024 |
7.0.2xx | 17.53 | Feb. 2023 | Mai 2023 |
7.0.3xx | 17.6 | Mai 2023 | Mai 2024 |
7.0.4xx | 17,7 | Aug. 2023 | Mai 2024 |
Unterstützte .NET-Versionen
SDK-Version | MSBuild-/Visual Studio-Version | Auslieferungsdatum | Lebenszyklus |
---|---|---|---|
6.0.1xx | 17.0 | Nov. 2021 | Nov. 20241 |
6.0.2xx | 17.1 | Feb. 2022 | Mai 2022 |
6.0.3xx | 17.23 | Mai 2022 | Okt. 2023 |
6.0.4xx | 17.3 | Aug. 22 | Nov. 20242 |
8.0.1xx | 17.8 | Nov. 23 | Nov. 251 |
8.0.2xx | 17.93 | Feb. 24 | Mai 2024 |
8.0.3xx | 17.10 | Mai 2024 | TBD |
8.0.4xx | 17,11 | Aug. 24 | Nov. 252 |
9.0.1xx | 17.12 | Nov. 24 | Mai 261 |
Hinweis
net6.0
als Ziel wird offiziell nur in Visual Studio 17.0 und höher unterstützt.
net7.0
als Ziel wird offiziell nur in Visual Studio 17.4 und höheren Versionen unterstützt.
net8.0
als Ziel wird offiziell nur in Visual Studio 17.8 und höheren Versionen unterstützt.
1 Die Featuregruppen des .1xx .NET SDK werden während des gesamten Lebenszyklus von .NET-Hauptversionen unterstützt. Während des erweiterten Supportzeitraums ist der Support nur auf Sicherheitsfixes und minimale andere Fixes mit hoher Priorität und nur auf Linux beschränkt. Weitere Informationen zu den Gründen für diesen erweiterten Support finden Sie im Dokument zur Unterstützung des Quellbuilds.
2 Die Featuregruppen des .4xx .NET SDK werden für die Laufzeit der entsprechenden Runtime als eigenständige Installationen unterstützt.
3 Für 6.0.300, 7.0.200, and 8.0.200 sind neuer Visual Studio-Versionen erforderlich. Weitere Informationen finden Sie in den Supportregeln.
Zielfestlegung und Regeln für die Unterstützung
Ab .NET SDK 7.0.100 und .NET SDK 6.0.300 wurde eine Richtlinie bezüglich der MSBuild- und Visual Studio-Versionen eingeführt, mit der eine bestimmte Version des .NET SDK ausgeführt wird. Die Richtlinie lautet wie folgt:
- Jedes neue TargetFramework erfordert eine neue Visual Studio-Version oder eine neue
dotnet
-Version. - Die erste Version von Visual Studio, die ein neues TargetFramework unterstützt, wird die Mindestversion für die Featuregruppen dieses SDK beispielsweise für die Roslyn-API-Schnittstelle, MSBuild-Ziele, Quell-Generatoren und Analysetools.
- Die erste Version eines neuen .NET SDK, die ein neues TargetFramework unterstützt, kann auch mit der früheren Visual Studio-Version verwendet werden, um ein Viertel der Tools und Infrastruktur (z. B. Aktionen und Pipelines) zu migrieren.
SDK | Visual Studio-Version in der das SDK enthalten ist |
Mindestversion von Visual Studio | TargetFramework-Höchstversion in Mindestversion von Visual Studio |
TargetFramework-Höchstversion in 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 |
Hinweis
Die Tabelle zeigt, wie diese Versionsverwaltungsregeln in Zukunft ab .NET SDK 7.0.100 und .NET SDK 6.0.300 angewendet werden. Zudem wird erläutert, wie die Richtlinie bei Verfügbarkeit auf zuvor veröffentlichte Versionen des .NET SDK angewendet worden wäre. Die Anforderungen für frühere Versionen des SDK ändern sich jedoch nicht. Dies bedeutet, dass die mindestens erforderliche Visual Studio-Version für .NET SDK 6.0.100 oder 6.0.200 die Version 16.10 bleibt.
1 Ein Breaking Change in Version 7.0.300 für die Blazor- und Razor-Entwicklung erfordert Visual Studio Version 17.6 oder höher. Weitere Informationen finden Sie unter dotnet/razor issue 8718.
Für eine konsistente Toolnutzung sollten Sie zum Erstellen Ihrer Anwendung nach Möglichkeit dotnet build
anstelle von msbuild
verwenden.
Versionsverwaltung für Vorschauversionen
Hauptversionen des .NET SDK werden in der Regel innerhalb weniger Tage nach einer Visual Studio-Vorschauversion veröffentlicht. Möglicherweise funktionieren auch andere Kombinationen, aber nur die zuletzt veröffentlichte Vorschauversion wird getestet und offiziell unterstützt. Die folgende Tabelle zeigt, mit welcher Visual Studio-Version jede .NET-Vorschauversion vor der Veröffentlichung getestet wurde.
SDK-Vorschauversion | Visual Studio-Version |
---|---|
9.0.100 Preview 1 | 17.10 Preview 1 |
9.0.100 Preview 2 | 17.10 Preview 2 |
9.0.100 Preview 3 | 17.10 Preview 3 |
9.0.100 Preview 4 | 17.11 Preview 1 |
9.0.100 Preview 5 | 17.11 Preview 2 |
9.0.100 Preview 6 | 17.11 Preview 3 |
9.0.100 Preview 7 | 17.12 Preview 1 |
9.0.100 RC 1 | 17.12 Preview 2 |
9.0.100 RC 2 | 17.12 Preview 3 |