CA2251: Üzerinde kullanın String.EqualsString.Compare

Özellik Değer
Kural Kimliği CA2251
Başlık Üzerinde kullan String.EqualsString.Compare
Kategori Kullanım
Hataya neden olan veya bozulmayan düzeltme Hataya neden olmayan
.NET 8'de varsayılan olarak etkin Hayır

Neden

çağrısının String.Compare sonucu sıfırla karşılaştırılır.

Kural açıklaması

String.Compare , sıralama için kullanılabilecek bir toplam düzen karşılaştırması üretmek üzere tasarlanmıştır. Yalnızca dizelerin eşit olup olmadığını önemsiyorsanız, eşdeğer bir aşırı yükleme kullanmak hem daha net hem de büyük olasılıkla daha hızlıdır String.Equals.

İhlalleri düzeltme

Bu kuralın ihlallerini düzeltmek için, öğesinin sonucunu String.Compare karşılaştıran ifadeyi çağrısıyla String.Equalsdeğiştirin.

Uyarıların ne zaman bastırılması gerekiyor?

Bu kuraldan gelen uyarıları engellemek güvenlidir.

Uyarıyı gizleme

Yalnızca tek bir ihlali engellemek istiyorsanız, kuralı devre dışı bırakmak ve sonra yeniden etkinleştirmek için kaynak dosyanıza ön işlemci yönergeleri ekleyin.

#pragma warning disable CA2251
// The code that's violating the rule is on this line.
#pragma warning restore CA2251

Bir dosya, klasör veya projenin kuralını devre dışı bırakmak için, yapılandırma dosyasındaki önem derecesini noneolarak ayarlayın.

[*.{cs,vb}]
dotnet_diagnostic.CA2251.severity = none

Daha fazla bilgi için bkz . Kod analizi uyarılarını gizleme.

Ayrıca bkz.