Bagikan melalui


Kedaluwarsa API dengan ID diagnostik non-default

Beberapa API telah ditandai sebagai kedaluwarsa, mulai dari .NET 5. Perubahan yang melanggar ini khusus untuk API yang telah ditandai sebagai kedaluwarsa dengan ID diagnostik kustom. Menekan ID diagnostik usang default, yaitu CS0618 untuk kompilator C#, tidak menekan peringatan yang dihasilkan oleh kompilator saat API ini digunakan.

Deskripsi perubahan

Di versi .NET sebelumnya, API ini dapat digunakan tanpa peringatan pembangunan apa pun. Di .NET 5 dan versi yang lebih baru, penggunaan API ini menghasilkan peringatan atau kesalahan waktu kompilasi dengan ID diagnostik kustom. Penggunaan ID diagnostik kustom memungkinkan Anda menyembunyikan peringatan usang satu per satu, bukan menyembunyikan semua peringatan usang.

Tabel berikut mencantumkan ID diagnostik kustom dan pesan peringatan terkait untuk API yang sudah kedaluwarsa.

ID diagnostik Deskripsi Tingkat keparahan
SYSLIB0001 Pengodean UTF-7 tidak aman dan tidak boleh digunakan. Pertimbangkan untuk menggunakan UTF-8 sebagai gantinya. Peringatan
SYSLIB0002 PrincipalPermissionAttribute tidak diterapkan oleh runtime dan tidak boleh digunakan. Error
SYSLIB0003 Keamanan akses kode (CAS) tidak didukung atau diterapkan oleh runtime. Peringatan
SYSLIB0004 Fitur wilayah eksekusi terbatas (CER) tidak didukung. Peringatan
SYSLIB0005 Singgahan perakitan global (GAC) tidak didukung. Peringatan
SYSLIB0006 Thread.Abort() tidak didukung dan memunculkan PlatformNotSupportedException. Peringatan
SYSLIB0007 Penerapan default dari algoritma kriptografis ini tidak didukung. Peringatan
SYSLIB0008 API CreatePdbGenerator() tidak didukung dan memunculkan PlatformNotSupportedException. Peringatan
SYSLIB0009 Metode AuthenticationManager.Authenticate dan AuthenticationManager.PreAuthenticate tidak didukung dan memunculkan PlatformNotSupportedException. Peringatan
SYSLIB0010 Beberapa API jarak jauh tidak didukung dan memunculkan PlatformNotSupportedException. Peringatan
SYSLIB0011 Serialisasi BinaryFormatter sudah kedaluwarsa dan tidak boleh digunakan. Peringatan
SYSLIB0012 Assembly.CodeBase dan Assembly.EscapedCodeBase hanya disertakan untuk kompatibilitas .NET Framework. Gunakan Assembly.Location sebagai gantinya. Peringatan

Versi yang diperkenalkan

.NET 5.0

  • Ikuti panduan khusus yang diberikan untuk setiap ID diagnostik menggunakan tautan URL yang diberikan pada peringatan.

  • Peringatan atau kesalahan untuk kedaluwarsa ini tidak dapat disembunyikan menggunakan ID diagnostik standar untuk jenis atau anggota yang kedaluwarsa; gunakan nilai ID diagnostik SYSLIBxxxx kustom sebagai gantinya.

API yang Terpengaruh

SYSLIB0001

SYSLIB0002

SYSLIB0003

Kelas di namespace System.Security.Permissions:

Kelas yang berasal dari CodeAccessSecurityAttribute:

Antarmuka:

Kelas yang menerapkan IStackWalk:

Kelas yang menerapkan IPermission:

Kelas yang berasal dari CodeAccessPermission:

Kelas yang berasal dari ResourcePermissionBase:

Enum di namespace System.Security.Permissions:

Kelas dan anggota yang bergantung pada jenis keamanan akses kode:

SYSLIB0004

SYSLIB0005

SYSLIB0006

SYSLIB0007

SYSLIB0008

SYSLIB0009

SYSLIB0010

SYSLIB0011

SYSLIB0012

Lihat juga