Aracılığıyla paylaş


CA2226: İşleçler simetrik aşırı yüklemelere sahip olmalıdır

Özellik Değer
Kural Kimliği CA2226
Başlık İşleçler simetrik aşırı yüklemelere sahip olmalıdır
Kategori Kullanım
Hataya neden olan veya bozulmayan düzeltme Hataya neden olmayan
.NET 9'da varsayılan olarak etkin Hayır

Neden

Bir tür, eşitlik ya da eşitsizlik operatörünü uygular ve ters işleci uygulamaz.

Varsayılan olarak, bu kural yalnızca dışarıdan görünen türlere bakar, ancak bu yapılandırılabilir.

Kural açıklaması

Bir türün örnekleri için eşitliğin veya eşitsizliğin geçerli olduğu ve karşıt işlecin tanımsız olduğu hiçbir koşul yoktur. Türler genellikle eşitlik işlecinin olumsuzlanan değerini döndürerek eşitsizlik işlecini uygular.

C# derleyicisi bu kuralın ihlalleri için bir hata döndürür.

İhlalleri düzeltme

Bu kuralın ihlalini düzeltmek için hem eşitlik hem de eşitsizlik işleçlerini uygulayın veya mevcut olanı kaldırın.

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

Bu kuraldan uyarıyı bastırmayın. Bunu yaparsanız, türünüz .NET ile tutarlı bir şekilde çalışmaz.

Çözümlemek için kod yapılandırma

Bu kuralın kod tabanınızın hangi bölümlerinde çalıştırılacaklarını yapılandırmak için aşağıdaki seçeneği kullanın.

Bu seçeneği yalnızca bu kural, geçerli olduğu tüm kurallar veya bu kategorideki (Kullanım) tüm kurallar için yapılandırabilirsiniz. Daha fazla bilgi için bkz . Kod kalitesi kuralı yapılandırma seçenekleri.

Belirli API yüzeylerini ekleme

Bu kuralın üzerinde çalıştırılacak kod tabanınızın hangi bölümlerini erişilebilirliklerine göre yapılandırabilirsiniz. Örneğin, kuralın yalnızca genel olmayan API yüzeyinde çalıştırılması gerektiğini belirtmek için projenizdeki bir .editorconfig dosyasına aşağıdaki anahtar-değer çiftini ekleyin:

dotnet_code_quality.CAXXXX.api_surface = private, internal