Aracılığıyla paylaş


Engellenen API'ler için yeni tanılama kimlikleri

Daha önce, özel tanılama kimlikleri kullanılmadan birkaç API engellendi. .NET 6'dan başlayarak, bu API'ler farklı, özel tanılama kimlikleri kullanılarak kullanım dışı olarak raporlanmıştır. CS0618 aracılığıyla bu API'lerin kullanımıyla ilgili uyarıları gizlediyseniz, SYSLIB0003, SYSLIB0019 ve SYSLIB0020 olan yeni tanılama kimliklerini kullanacak şekilde gizlemeleri değiştirin.

Açıklama değiştirildi

Aşağıdaki tabloda, listelenen eski API için eski ve yeni tanılama kimlikleri gösterilmektedir.

API Önceki tanılama kimliği Yeni tanılama kimliği
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

Sürüm kullanıma sunulmuştur

.NET 6

Değişiklik nedeni

.NET 5'te başlayarak, obsoletions uyarıların ayrıntılı bir şekilde bastırılması için özel tanılama kimliği değerleri kullanmak üzere tasarlanmıştır. Bu, eski API'lere başvurulmaya devam etmesi gerektiğinde daha iyi bir deneyim sunar. Burada etkilenen obsolet'lerde, API'ler başlangıçta olarak [Obsolete]işaretlendiğinde özel tanılama kimliği değerleri uygulanmış olmalıdır.

derlemenizden SYSLIB0003, SYSLIB0019 veya SYSLIB0020 tanılama kimlikleri oluşturulursa, etkilenen API'lerin kullanımını gözden geçirin. Mümkünse, bu API'leri kullanmaktan kaçının ve alternatifler için iletilere ve belgelere bakın. Eski API'lere yönelik başvuruları korumanız ve tanılamayı gizlemeniz gerekiyorsa, CS0618 yerine yeni tanılama kimliklerini kullanarak uyarıları gizleyin.

Etkilenen API’ler

Ayrıca bkz.