Udostępnij za pośrednictwem


Nowe identyfikatory diagnostyczne przestarzałych interfejsów API

Wcześniej kilka interfejsów API zostało przestarzałych bez używania niestandardowych identyfikatorów diagnostycznych. Począwszy od platformy .NET 6, te interfejsy API raportują jako przestarzałe przy użyciu różnych niestandardowych identyfikatorów diagnostycznych. Jeśli pominięto ostrzeżenia dotyczące użycia tych interfejsów API za pośrednictwem CS0618, zmodyfikuj pomijania, aby używać nowych identyfikatorów diagnostycznych, które są SYSLIB0003, SYSLIB0019 i SYSLIB0020.

Opis zmiany

W poniższej tabeli przedstawiono stare i nowe identyfikatory diagnostyczne dla wymienionego przestarzałego interfejsu API.

interfejs API Poprzedni identyfikator diagnostyczny Nowy identyfikator diagnostyczny
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

Wprowadzona wersja

.NET 6

Przyczyna wprowadzenia zmiany

Począwszy od platformy .NET 5, obsoletions są przeznaczone do używania niestandardowych wartości identyfikatorów diagnostycznych w celu umożliwienia szczegółowego pomijania ostrzeżeń. Zapewnia to lepsze środowisko, gdy przestarzałe interfejsy API muszą pozostać przywołytyzowane. Te obsoletions, których dotyczy problem, powinny mieć niestandardowe wartości identyfikatorów diagnostycznych zastosowane, gdy interfejsy API zostały pierwotnie oznaczone jako [Obsolete].

Jeśli identyfikatory diagnostyczne SYSLIB0003, SYSLIB0019 lub SYSLIB0020 są generowane na podstawie kompilacji, przejrzyj użycie dotkniętych interfejsów API. Jeśli to możliwe, unikaj używania tych interfejsów API i zapoznaj się z komunikatami i dokumentacją, aby uzyskać alternatywy. Jeśli musisz zachować odwołania do przestarzałych interfejsów API i pominąć diagnostykę, pomiń ostrzeżenia przy użyciu nowych identyfikatorów diagnostycznych zamiast CS0618.

Dotyczy interfejsów API

Zobacz też