Nová diagnostická ID pro zastaralá rozhraní API
Dříve bylo několik rozhraní API zastaralé bez použití vlastních diagnostických ID. Počínaje rozhraním .NET 6 se tato rozhraní API hlásí jako zastaralá pomocí různých vlastních diagnostických ID. Pokud jste potlačí upozornění na používání těchto rozhraní API prostřednictvím CS0618, upravte potlačení tak, aby používala nová diagnostická ID, která jsou SYSLIB0003, SYSLIB0019 a SYSLIB0020.
Změna popisu
Následující tabulka ukazuje stará a nová diagnostická ID pro uvedené zastaralé rozhraní API.
rozhraní API | Předchozí ID diagnostiky | Nové ID diagnostiky |
---|---|---|
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 |
Zavedená verze
.NET 6
Důvod změny
Počínaje rozhraním .NET 5 jsou obsoletions určené k použití vlastních hodnot ID diagnostiky, které umožňují jemně odstupňované potlačení upozornění. To přináší lepší prostředí v případě, že zastaralá rozhraní API musí zůstat odkazovaná. Zde ovlivněné obsoletions by měly mít vlastní hodnoty ID diagnostiky použité, když byla rozhraní API původně označena jako [Obsolete]
.
Doporučená akce
Pokud se z sestavení vytvoří id diagnostiky SYSLIB0003, SYSLIB0019 nebo SYSLIB0020, zkontrolujte využití ovlivněných rozhraní API. Pokud je to možné, vyhněte se používání těchto rozhraní API a projděte si zprávy a dokumentaci k alternativám. Pokud potřebujete zachovat odkazy na zastaralá rozhraní API a potlačit diagnostiku, potlačit upozornění pomocí nových diagnostických ID místo CS0618.
Ovlivněná rozhraní API
- 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