// HEISE ONLINE — MOBILE & WEB
.NET 11.0 Release Candidate 2: Breaking Changes kurz vor Fertigstellung
Rund vier Wochen vor dem geplanten Erscheinen von .NET 11.0 legt Microsoft einen zweiten Release Candidate nach, der noch Breaking Changes enthält.
Auch für den am 13. Oktober 2026 erschienenen Release Candidate 2 von .NET 11.0 verkündet Microsoft in der offiziellen Ankündigung eine „Go-Live“-Lizenz. Entwicklerinnen und Entwickler dürfen diese Version also produktiv einsetzen und erhalten Produktsupport über die offiziellen Kanäle von Microsoft.
Die Laufzeitumgebung trägt die Versionsnummer 11.0.0-rc.2.26504.105, das SDK die Versionsnummer 11.0.100-rc.2.26504.105. Microsoft unterstützt den Release Candidate 2 in der aktuellen Version 12308.306 von Visual Studio 2026 Insiders (dort ist das .NET 11.0-SDK weiterhin nicht direkt installierbar) sowie in Visual Studio Code mit der Erweiterung C# Dev Kit. Der Download ist kostenlos unter https://dotnet.microsoft.com/download/dotnet/11.0 verfügbar (siehe Abbildung 1).
Neue Sprachfeatures für C# 15.0 gibt es in Release Candidate 2 nicht. Die Container-Images bleiben unverändert; bei Entity Framework Core und bei WPF beschränkt sich die neue Version auf Fehlerbehebungen.
Der Blogbeitrag zum Release Candidate 2 listet viele Neuerungen in Windows Forms, von denen die meisten allerdings schon in Preview 7 beziehungsweise im Release Candidate 1 verfügbar waren.
Dazu gehören insbesondere der Kiosk-Modus von Windows Forms, das Ereignis SystemVisualSettingsChanged und das Auslesen der Windows-Einstellungen via System.Windows.Forms.Application.SystemVisualSettings, die verzögerte Formularanzeige gegen Flackern mittels der Methode Application.SetDefaultFormRevealMode() und Eigenschaft Form.FormRevealMode sowie die Methode SuspendPainting() zum Aussetzen von Zeichnen und Layout. Nur die im Folgenden beschriebenen Neuerungen waren zuvor noch nicht enthalten.
Bei Windows Forms basiert die Benutzeroberfläche nicht auf einer Markup-Sprache, sondern auf Programmcode in der Methode InitializeComponent() in der Designer-Datei (Formname.Designer.cs). Der WYSIWYG-Designer in Visual Studio führt diese Methode zur Entwicklungszeit aus und ändert den Programmcode bei Aktionen der Entwicklerin im Designer. Der Windows-Forms-Designer kann aber nur Code in InitializeComponent() verarbeiten, der den von Microsoft vorgegebenen Mustern folgt. Schleifen, Lambda-Ausdrücke oder Null-Coalescing-Operatoren führen dazu, dass sich ein Formular im Designer nicht mehr öffnen lässt oder der Designer Code beim nächsten Speichern verwirft.
Mit dem Release Candidate 2 liefert .NET 11.0 daher standardmäßig aktive Analyzer für C# und Visual Basic .NET, die nicht unterstützte Konstrukte bereits beim Kompilieren melden. Microsoft nennt als Motivation dafür Code-Generatoren und KI-generierten Code, der diese Regeln oft missachtet. Die Analyzer gelten allerdings aufgrund der Verankerung im .NET 11.0 SDK nur für Projekte ab .NET 11.0, nicht für das klassische .NET Framework. Die folgende Tabelle zeigt eine Auswahl der insgesamt 14 Regeln.
Einen automatischen Code-Fix gibt es nicht. Für bestehende Formulare, die bewusst von den Regeln abweichen, lässt sich der Schweregrad in einer .editorconfig-Datei gezielt pro Datei herabsetzen. Das macht den Code aber gegebenenfalls untauglich für den Designer.
Listing 1: Herabsetzen des Schweregrads für eine einzelne Designer-Datei in der Datei .editorconfig.