Freigeben über


Neue Diagnose-IDs für veraltete APIs

Früher wurden einige APIs veraltet, ohne dass benutzerdefinierte Diagnose-IDs verwendet wurden. Ab .NET 6 werden diese APIs mit unterschiedlichen benutzerdefinierten Diagnose-IDs als veraltet angezeigt. Wenn Sie Warnungen für die Verwendung dieser APIs über CS0618 unterdrückt haben, ändern Sie die Unterdrückungen, um die neuen Diagnose-IDs zu verwenden, die SYSLIB0003, SYSLIB0019 und SYSLIB0020 sind.

Änderungsbeschreibung

In der folgenden Tabelle sind die alten und neuen Diagnose-IDs für die aufgeführte veraltete API aufgeführt.

Programmierschnittstelle (API) Vorherige Diagnose-ID Neue Diagnose-ID
Thread.GetCompressedStack() CS0618 SYSLIB0003
Thread.SetCompressedStack(CompressedStack) CS0618 SYSLIB0003
RuntimeEnvironment.SystemConfigurationFile CS0618 SYSLIB0019
RuntimeEnvironment.GetRuntimeInterfaceAsIntPtr(Guid, Guid) CS0618 SYSLIB0019
RuntimeEnvironment.GetRuntimeInterfaceAsObject(Guid, Guid) CS0618 SYSLIB0019
JsonSerializerOptions.IgnoreNullValues CS0618 SYSLIB0020

Eingeführte Version

.NET 6

Grund für Änderung

Ab .NET 5 sollen für veraltete Versionen benutzerdefinierte Diagnose-ID-Werte verwendet werden, um eine differenzierte Unterdrückung der Warnungen zu ermöglichen. Dies führt zu einer besseren Benutzererfahrung, wenn auf die veralteten APIs verwiesen werden muss. Auf die hier betroffenen veralteten Versionen sollten benutzerdefinierte Diagnose-ID-Werte angewendet worden sein, als die APIs ursprünglich als [Obsolete] markiert wurden.

Wenn die SYSLIB0003, SYSLIB0019 oder SYSLIB0020 Diagnose-IDs aus Ihrem Build erstellt werden, überprüfen Sie die Verwendung der betroffenen APIs. Vermeiden Sie nach Möglichkeit die Verwendung dieser APIs, und verweisen Sie auf die Nachrichten und Dokumentationen für Alternativen. Wenn Sie die Verweise auf die veralteten APIs beibehalten und die Diagnose unterdrücken müssen, unterdrücken Sie die Warnungen mithilfe der neuen Diagnose-IDs anstelle von CS0618.

Betroffene APIs

Siehe auch