Nuovi ID di diagnostica per le API obsolete
In precedenza, alcune API erano obsolete senza usare ID di diagnostica personalizzati. A partire da .NET 6, tali API vengono indicati come obsoleti usando ID di diagnostica personalizzati diversi. Se sono stati eliminati avvisi per l'utilizzo di tali API tramite CS0618, modificare le eliminazioni in modo da usare i nuovi ID di diagnostica, che sono SYSLIB0003, SYSLIB0019 e SYSLIB0020.
Descrizione delle modifiche
La tabella seguente illustra gli ID di diagnostica precedenti e nuovi per l'API obsoleta elencata.
API | ID di diagnostica precedente | Nuovo ID di diagnostica |
---|---|---|
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 |
Versione introdotta
.NET 6
Motivo della modifica
A partire da .NET 5, gli elementi obsolescenti sono destinati all'uso di valori ID di diagnostica personalizzati per consentire l'eliminazione con livello di dettaglio elevato degli avvisi. In questo modo si ottiene un'esperienza migliore quando le API obsolete devono rimanere quelle a cui si fa riferimento. Le API obsolete interessate in questo caso devono avere applicato valori ID di diagnostica personalizzati quando le API sono state originariamente contrassegnate come [Obsolete]
.
Azione consigliata
Se gli ID di diagnostica SYSLIB0003, SYSLIB0019 o SYSLIB0020 vengono generati dalla compilazione, esaminare l'utilizzo delle API interessate. Se possibile, evitare di usare tali API e fare riferimento ai messaggi e alla documentazione per le alternative. Se è necessario conservare i riferimenti alle API obsolete ed eliminare la diagnostica, eliminare gli avvisi usando i nuovi ID di diagnostica anziché CS0618.
API interessate
- System.Threading.Thread.GetCompressedStack()
- System.Threading.Thread.SetCompressedStack(CompressedStack)
- System.Runtime.InteropServices.RuntimeEnvironment.SystemConfigurationFile
- System.Runtime.InteropServices.RuntimeEnvironment.GetRuntimeInterfaceAsIntPtr(Guid, Guid)
- System.Runtime.InteropServices.RuntimeEnvironment.GetRuntimeInterfaceAsObject(Guid, Guid)
- System.Text.Json.JsonSerializerOptions.IgnoreNullValues