.NET 6

Eintrag zuletzt aktualisiert am: 29.03.2021


.NET 6 (alias .NET 6.0) ist der Nachfolger von .NET 5.0, der im November 2021 erscheinen soll.

Mit .NET 6 kommt nicht nur die ursprünglich schon für .NET 5 geplante Vereinheitlichung "One .NET", sondern es wird auch neue Anwendungsarten und weitere Verbesserungen für die Entwickler geben.

.NET 6 ist eine Long-Termin-Support-Version, die bis Ende 2024 unterstützt wird von Microsoft.

Bestandteile
Enthalten sein werden:
Termine
Preview 1: 17.2.2021
Erscheinungstermin: November 2021

Neue Features (geplant)
Leichterer Einstieg für neue Entwickler
Modularisierung des .NET SDKs in Workloads

Unterstützung für den neuen ARM-64-basierten Apple-Chip "M1" (alias Apple Silikon)
AOT für Blazor WebAssembly (aber noch nicht für alle Anwendungsarten)
Source Code Generators statt Reflection für Leistungsverbesserung und AOT
Tiered Compilation im JIT mit Profile-Guided Optimization (PGO)
Single-File-Apps für alle Anwendungsarten inkl. Debugging
Unterstützung für Open Telemetry
Verbessertes Application Trimming (Tree Shaking)

Blazor WebAssembly Hello World <= 0.5 MB geändert auf -20% 
Razor Compiler auf Basis von Source Code Generators
Hot Reloading / Hot Restart für ASP.NET Core und Blazor
Edit and Continue (EnC) beim Debugging für Razor Views/Pages/Components
Blazor Hybrid: Hybride Desktop-Anwendungen mit Blazor

HTTP/3 auf Basis von Quick UDP Internet Connections (QUIC)
Client-Retry für gRPC
Anpassbarer Reverse Proxy

Cross-Platform in .NET 6
Wie bisher laufen Windows Forms und WPF nur auf Windows. Daran wird sich auch in .NET 6 nichts ändern. Dies gilt auch für die kommende Windows UI Library 3 (WinUI3), dem designierten Nachfolger von UWP und WPF. Microsoft geht in .NET 6 das Thema Cross-Platform aus zwei anderen Richtungen an:
1. Das .NET Multi-Platform App UI (MAUI) ist der Nachfolger von Xamarin Forms und wird auf Android, iOS, Windows und macOS laufen. Linux ist erstmal ausgeklammert, aber in Diskussion [https://github.com/jsuarezruiz/forms-gtk-progress/issues/31]. Das UI wird hier weiterhin durch XAML beschrieben.
2. Blazor Desktop wird eine hybride Lösung sein: HTML-UI verpackt in eine Desktop-Anwendung (vgl. Den Ansatz von GitHubs Electron).