Breaking Changes in .NET 6

Wenn Sie eine App zu .NET 6 migrieren, sind Sie möglicherweise von den hier aufgeführten Breaking Changes betroffen. Änderungen werden nach Technologiebereich gruppiert, z. B. ASP.NET Core oder Windows Forms.

Hinweis

Dies ist nicht die endgültige Fassung dieses Artikels. Nicht alle Breaking Changes für .NET 6 werden hier aufgeführt. Informationen zu noch nicht veröffentlichten Breaking Changes finden Sie unter Issues of .NET.

ASP.NET Core

Titel Binärkompatibel Quellkompatibel Eingeführt
AddDataAnnotationsValidation-Methode als veraltet erklärt ✔️
Assemblys, die aus dem freigegebenen Microsoft.AspNetCore.App-Framework entfernt wurden ✔️
Blazor: Der Parametername wurde in der RequestImageFileAsync-Methode geändert. ✔️ Vorschauversion 1
Blazor: WebEventDescriptor.EventArgsType-Eigenschaft ersetzt
Blazor: Bytearray-Interop ✔️ Vorschau 6
Blazor-Server: Deaktivieren des Fallbacktransports für lange Abrufe ✔️ RC 1
Geänderte MessagePack-Bibliothek in @microsoft/signalr-protocol-msgpack ✔️
Die Eigenschaft „ClientCertificate“ löst keine erneute Aushandlung für HttpSys aus ✔️
Kestrel: Protokollmeldungsattribute geändert ✔️
Microsoft.AspNetCore.Http.Features Aufteilung ✔️
Middleware: HTTPS-Umleitungsmiddleware löst Ausnahme für mehrdeutige HTTPS-Ports aus ✔️
Middleware: Neue Use-Überladung ✔️ Vorschauversion 4
MVC puffert keine IAsyncEnumerable-Typen, wenn System.Text.Json verwendet wird ✔️ Vorschauversion 4
Anmerkungen für Nullable-Verweistypen geändert ✔️
Veraltete und entfernte APIs ✔️ Vorschauversion 1
PreserveCompilationContext nicht standardmäßig konfiguriert ✔️
Razor: Compiler erzeugt keine Views-Assembly mehr ✔️ Vorschauversion 3
Razor: Änderungen der Protokollierungs-ID ✔️ RC1
Razor: RazorEngine-APIs wurden als veraltet gekennzeichnet ✔️ Vorschauversion 1
SignalR: Java-Client auf RxJava3 aktualisiert ✔️ Vorschauversion 4
TryParse- und BindAsync-Methoden werden überprüft. RC 2

Core .NET-Bibliotheken

Titel Binärkompatibel Quellkompatibel Eingeführt
Veraltete APIs ohne Standarddiagnose-IDs ✔️ Vorschauversion 1
Änderungen an Anmerkungen für Nullable-Verweistypen ✔️ Vorschau 1–2
Environment.ProcessorCount-Verhalten unter Windows ✔️ Vorschau 2
FileStream synchronisiert den Dateioffset nicht mehr mit dem Betriebssystem Vorschauversion 4
FileStream.Position-Aktualisierung nach Abschluss von ReadAsync oder WriteAsync Vorschauversion 4
Neue Diagnose-IDs für veraltete APIs ✔️ Vorschauversion 5
Neue Nullable-Anmerkung in AssociatedMetadataTypeTypeDescriptionProvider ✔️ RC 2
Neue Überladungen der System.Linq.Queryable-Methode ✔️ Vorschau 3–4
Ältere Frameworkversionen aus Paket gelöscht ✔️ Vorschauversion 5
Teilweise und Null-Byte-Lesevorgänge in DeflateStream, GZipStream und CryptoStream ✔️ Vorschau 6
Einige Parameter in von Stream abgeleiteten Typen werden umbenannt. ✔️ Vorschauversion 1
Standardmäßige Zahlenformatanalysegenauigkeit ✔️ Vorschau 2
Statische abstrakte Member in Schnittstellen ✔️ Preview 7
System.Drawing.Common wird nur für Windows unterstützt Preview 7
Nicht behandelte Ausnahmen von einem BackgroundService ✔️ Vorschauversion 4

Entity Framework Core

Breaking Changes in EF Core 6

-Erweiterungen

Titel Binärkompatibel Quellkompatibel Eingeführt
Microsoft.Extensions.Configuration-Binder bindet einzelne Elemente an ein Array ✔️ RC 1

Globalisierung

Titel Binärkompatibel Quellkompatibel Eingeführt
Kulturerstellung und Zuordnung von Groß-/Kleinbuchstaben im globalisierungsinvarianten Modus Preview 7

Interop

Titel Binärkompatibel Quellkompatibel Eingeführt
Statische abstrakte Member in Schnittstellen ✔️ Preview 7

JIT-Compiler

Titel Binärkompatibel Quellkompatibel Eingeführt
Coerce-Aufrufargumente gemäß ECMA-335 ✔️ ✔️ Vorschauversion 1

Netzwerk

Titel Binärkompatibel Quellkompatibel Eingeführt
WebRequest, WebClient und ServicePoint sind veraltet. ✔️ Vorschauversion 1

SDK

Titel Binärkompatibel Quellkompatibel Eingeführt
-p-Option für dotnet run ist veraltet ✔️ Vorschau 6
C#-Code in Vorlagen, die von früheren Versionen nicht unterstützt werden ✔️ ✔️ Preview 7
Generieren von apphost für macOS ✔️ Vorschau 6
Generieren eines Fehlers für doppelte Dateien in der Veröffentlichungsausgabe ✔️ Vorschauversion 1
„GetTargetFrameworkProperties“ und „GetNearestTargetFramework“ wurden aus dem ProjectReference-Protokoll entfernt ✔️ Vorschauversion 1
Implizite globale using-Anweisungen in C#-Projekten ✔️ Preview 7
Implizite globale using-Anweisungen deaktiviert ✔️ RC 1
MSBuild unterstützt das Aufrufen von GetType() nicht mehr RC 1
OutputType nicht automatisch auf WinExe festgelegt ✔️ RC 1
RuntimeIdentifier-Warnung, wenn eigenständig nicht angegeben ist ✔️ RC 1

Serialisierung

Titel Binärkompatibel Quellkompatibel Eingeführt
Refactoring der Quellgenerierungs-API für JSON ✔️ RC 2
JsonNode unterstützt den C#-dynamic-Typ nicht mehr ✔️ Preview 7
Neue JsonSerializer-Quellgeneratorüberladungen ✔️ Vorschau 6

Windows Forms

Titel Binärkompatibel Quellkompatibel Eingeführt
Ausgewählte TableLayoutSettings-Eigenschaften, die eine InvalidEnumArgumentException-Ausnahme auslösen ✔️ Vorschauversion 1
Mit DataGridView verbundene APIs lösen jetzt InvalidOperationException aus ✔️ Vorschauversion 4
ListViewGroupCollection-Methoden lösen neue InvalidOperationException aus ✔️ RC 2
Maximale Textlänge für NotifyIcon.Text erhöht ✔️ Vorschauversion 1
Manche APIs lösen ArgumentNullException aus ✔️ Vorschau 1–4
TreeNodeCollection.Item löst eine Ausnahme aus, wenn der Knoten an anderer Stelle zugewiesen wird. ✔️ Vorschauversion 1