CA1308: Normalkan string menjadi huruf besar
Properti | Nilai |
---|---|
ID Aturan | CA1308 |
Judul | Normalkan string menjadi huruf besar |
Golongan | Globalisasi |
Perbaikan bersifat disruptif atau non-disruptif | Non-disruptif |
Diaktifkan secara default di .NET 9 | No |
Penyebab
Operasi menormalkan string menjadi huruf kecil.
Deskripsi aturan
String harus dinormalisasi menjadi huruf besar. Sekelompok kecil karakter, ketika dikonversi menjadi huruf kecil, tidak dapat melakukan perjalanan pulang pergi. Untuk melakukan perjalanan pulang pergi berarti mengonversi karakter dari satu lokal ke lokal lain yang mewakili data karakter secara berbeda, lalu untuk mengambil karakter asli secara akurat dari karakter yang dikonversi.
Cara memperbaiki pelanggaran
Ubah operasi yang mengonversi string menjadi huruf kecil sehingga string dikonversi menjadi huruf besar sebagai gantinya. Misalnya, ubah String.ToLower(CultureInfo.InvariantCulture)
menjadi String.ToUpper(CultureInfo.InvariantCulture)
.
Kapan harus menekan peringatan
Aman untuk menekan peringatan saat Anda tidak membuat keputusan keamanan berdasarkan hasil normalisasi (misalnya, saat Anda menampilkan hasilnya di UI).
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 CA1308
// The code that's violating the rule is on this line.
#pragma warning restore CA1308
Untuk menonaktifkan aturan untuk file, folder, atau proyek, atur tingkat keparahannya ke none
dalam file konfigurasi.
[*.{cs,vb}]
dotnet_diagnostic.CA1308.severity = none
Untuk informasi selengkapnya, lihat Cara menyembunyikan peringatan analisis kode.