Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
CA2265: Jangan bandingkan
| Properti | Nilai |
|---|---|
| ID Aturan | CA2264 |
| Judul | Jangan bandingkan Span<T> dengan null ataudefault |
| Golongan | Penggunaan |
| Perbaikan bersifat disruptif atau non-disruptif | Non-disruptif |
| Diaktifkan secara default di .NET 10 | Sebagai peringatan |
Penyebab
Instans Span<T> dibandingkan null dengan atau default.
Deskripsi aturan
Membandingkan rentang dengan null atau default mungkin tidak melakukan apa yang Anda inginkan.
default
null dan harfiah dikonversi secara implisit menjadi Span<T>.Empty.
Cara memperbaiki pelanggaran
Hapus perbandingan berlebihan atau buat kode lebih eksplisit dengan memanggil IsEmpty sebagai gantinya.
Contoh
Cuplikan kode berikut menunjukkan dua pelanggaran CA2265 dan perbaikan untuk pelanggaran.
Span<int> span = new([1, 2, 3]);
// CA2265 violation.
if (span == null) { }
// CA2265 violation.
if (span == default) { }
// Fixes the violation.
if (span.IsEmpty) { }
Kapan harus menekan peringatan
Aman untuk menekan peringatan ini jika Anda ingin membandingkan rentang dengan rentang kosong.
Menyembunyikan peringatan
Jika Anda hanya ingin menyembunyikan satu pelanggaran, tambahkan arahan praprosedur ke file sumber Anda untuk dinonaktifkan lalu aktifkan kembali aturannya.
#pragma warning disable CA2265
// The code that's violating the rule is on this line.
#pragma warning restore CA2265
Untuk menonaktifkan aturan untuk file, folder, atau proyek, atur tingkat keparahannya ke none dalam file konfigurasi.
[*.{cs,vb}]
dotnet_diagnostic.CA2265.severity = none
Untuk informasi selengkapnya, lihat Cara menyembunyikan peringatan analisis kode.