Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Wenn Sie eine App zu .NET 9 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.
In diesem Artikel werden die einzelnen Breaking Changes als mit der Binärdatei inkompatibel, mit der Quelle inkompatibel oder als Verhaltensänderung kategorisiert:
Binärdatei inkompatibel: Wenn sie mit der neuen Runtime oder Komponente ausgeführt werden, kann bei vorhandenen Binärdateien ein Breaking Change im Verhalten auftreten, z. B. Fehler beim Laden oder Ausführen. In diesem Fall müssen sie erneut kompiliert werden.
Quelle inkompatibel: Bei der Neukompilierung mit dem neuen SDK oder der neuen Komponente oder zur Ausrichtung auf die neue Runtime sind für vorhandenen Quellcode möglicherweise Quelländerungen erforderlich, damit die Kompilierung erfolgreich ist.
Verhaltensänderung – Vorhandene Code- und Binärdateien verhalten sich zur Laufzeit möglicherweise anders. Wenn das neue Verhalten unerwünscht ist, muss vorhandener Code aktualisiert und neu kompiliert werden.
ASP.NET Kern
| Titel | Art der Änderung |
|---|---|
| DefaultKeyResolution.ShouldGenerateNewKey geänderte Bedeutung | Verhaltensänderung |
| Dev Cert Export erstellt keinen Ordner mehr | Verhaltensänderung |
| Forwarded Headers Middleware ignoriert X-Forwarded-*-Header von unbekannten Proxys. | Verhaltensänderung |
| HostBuilder aktiviert ValidateOnBuild/ValidateScopes in Entwicklungsumgebung | Verhaltensänderung |
| Legacy-Mono- und Emscripten-APIs werden nicht in den globalen Namespace exportiert | Quelle inkompatibel |
| Middleware-Typen mit mehreren Konstruktoren | Verhaltensänderung |
Container
| Titel | Art der Änderung | Eingeführt in Version |
|---|---|---|
| Container-Images installieren zlib nicht mehr | Verhaltensänderung | Preview 7 |
| .NET Monitor-Images zu versionierten Tags vereinfacht | Verhaltensänderung | Vorschau 5 |
Core .NET-Bibliotheken
Kryptografie
| Titel | Art der Änderung | Eingeführt in Version |
|---|---|---|
| APIs von System.Security.Cryptography.Pkcs netstandard2.0 entfernt | Quelle inkompatibel | GA |
| SafeEvpPKeyHandle.DuplicateHandle erhöht die Referenz des Handle | Verhaltensänderung | Preview 7 |
| Einige X509Certificate2- und X509Certificate-Konstruktoren sind veraltet | Quelle inkompatibel | Preview 7 |
| Lebensdauer von Windows Private Key vereinfacht | Verhaltensänderung | Preview 7 |
Bereitstellung
| Titel | Art der Änderung | Eingeführt in Version |
|---|---|---|
| Veraltete Desktoplaufzeitpakete für Windows/macOS/Linux MonoVM | Quelle inkompatibel | Preview 7 |
Entity Framework Core
Grundlegende Änderungen in EF Core 9
Interoperabilität
| Titel | Art der Änderung | Eingeführt in Version |
|---|---|---|
| CET standardmäßig unterstützt | Binär nicht kompatibel | Vorschau 6 |
JIT-Compiler
| Titel | Art der Änderung | Eingeführt in Version |
|---|---|---|
| Konvertierungen von Gleitkomma- in Ganzzahlwerte besitzen jetzt ein Sättigungsverhalten | Verhaltensänderung | Vorschau 4 |
| Entfernen einiger SVE-APIs | Quelle inkompatibel | RC 2 |
Netzwerk
| Titel | Art der Änderung | Eingeführt in Version |
|---|---|---|
| Veraltete APIs | Quelle inkompatibel | Vorschau 6 |
HttpClient-Metrikbericht server.port bedingungslos |
Verhaltensänderung | Preview 7 |
| HttpClientFactory-Protokollierung bearbeitet die Headerwerte standardmäßig | Verhaltensänderung | RC 1 |
| HttpClientFactory verwendet SocketsHttpHandler als primären Handler | Verhaltensänderung | Vorschau 6 |
| HttpListenerRequest.UserAgent kann null sein | Quelle inkompatibel | Vorschauversion 1 |
| Ausblenden von URI-Abfragen in HttpClient EventSource-Ereignissen | Verhaltensänderung | Preview 7 |
| Unkenntlichmachung von URI-Abfragen in IHttpClientFactory-Protokollen | Verhaltensänderung | Preview 7 |
SDK und MSBuild
| Titel | Art der Änderung | Eingeführt in Version |
|---|---|---|
dotnet sln add lässt keine ungültigen Dateinamen zu. |
Verhaltensänderung | 9.0.2xx |
dotnet watch nicht kompatibel mit Hot Reload für alte Frameworks |
Verhaltensänderung | RC 1 |
dotnet workload erfordert eine Ausgabeänderung |
Verhaltensänderung | Vorschauversion 1 |
installer Repository-Version nicht mehr dokumentiert |
Verhaltensänderung | Vorschau 5 |
| Umgang mit benutzerdefinierten MSBuild-Kulturressourcen | Verhaltensänderung | 9.0.200/9.0.300 |
| Neue Standard-RID zur Zielbestimmung im .NET Framework | Quelle inkompatibel | GA |
| Terminal Logger ist Standard | Verhaltensänderung | Vorschauversion 1 |
| Versionsanforderungen für .NET 9 SDK | Quelle inkompatibel | GA |
| Warnung für .NET Standard 1.x-Ziel | Quelle inkompatibel | Vorschau 6 |
| Warnung für .NET 7-Ziel ausgegeben | Quelle inkompatibel | GA |
Serialisierung
| Titel | Art der Änderung | Eingeführt in Version |
|---|---|---|
| BinaryFormatter löst immer aus | Verhaltensänderung | Vorschau 6 |
| JsonDocument-Eigenschaften, die Nullwerte zulassen, werden zu JsonValueKind.Null deserialisiert | Verhaltensänderung | Vorschauversion 1 |
| System.Text.Json-Metadatenleser entfernt jetzt Meta-Dateneigenschaftennamen | Verhaltensänderung | GA |
Windows Forms
| Titel | Art der Änderung | Eingeführt in Version |
|---|---|---|
| BindingSource.SortDescriptions gibt keinen Nullwert zurück | Verhaltensänderung | Vorschauversion 1 |
| Änderungen an Anmerkungen zur NULL-Zulässigkeit | Quelle inkompatibel | Vorschauversion 1 |
| ComponentDesigner.Initialize löst ArgumentNullException aus | Verhaltensänderung | Vorschauversion 1 |
| DataGridViewRowAccessibleObject.Name Startzeilenindex | Verhaltensänderung | Vorschauversion 1 |
| IMsoComponent-Support ist eine wählbare Option | Verhaltensänderung | Vorschau 2 |
| Neue Sicherheitsanalysetools | Quelle inkompatibel | RC 1 |
| Keine Ausnahme, wenn DataGridView NULL ist | Verhaltensänderung | Vorschauversion 1 |
| PictureBox löst HttpClient-Ausnahmen aus | Verhaltensänderung | Vorschau 6 |
| StatusStrip verwendet einen anderen Standardrenderer | Verhaltensänderung | GA |
WPF (Windows Presentation Foundation)
| Titel | Art der Änderung | Eingeführt in Version |
|---|---|---|
GetXmlNamespaceMapsTypänderung |
Verhaltensänderung/Quelle inkompatibel | Vorschau 3 |