Tür denetimi yerine 'null' denetimini tercih edin (IDE0150)

Özellik Değer
Kural Kimliği IDE0150
Başlık Tür denetimi yerine denetimi tercih edin null
Kategori Stil
Alt Kategori Dil kuralları (ifade düzeyi tercihleri)
Geçerli diller C#
Seçenekler csharp_style_prefer_null_check_over_type_check

Genel Bakış

Bu stil kuralı, deyiminin is {type} ne zaman is not null kullanılabileceğini gösterir. Benzer şekilde, deyiminin is not {type} kullanımını lehine is nullişaretler. Kod okunabilirliğini kullanma is null veya is not null geliştirme.

Seçenekler

Seçenekler, kuralın zorlamasını istediğiniz davranışı belirtir. Seçenekleri yapılandırma hakkında bilgi için bkz. Seçenek biçimi.

csharp_style_prefer_null_check_over_type_check

Özellik Değer Açıklama
Seçenek adı csharp_style_prefer_null_check_over_type_check
Seçenek değerleri true Tür denetimi yerine null denetimi tercih edin.
false Kuralı devre dışı bırakır.
Varsayılan seçenek değeri true

Örnek

// Violates IDE0150.
if (numbers is not IEnumerable<int>) ...

// Fixed code.
if (numbers is null) ...

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 önişlemci yönergeleri ekleyin.

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

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

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

Kod stili kuralların tümünü devre dışı bırakmak için Stylenone, kategorinin önem derecesini yapılandırma dosyasında olarak ayarlayın.

[*.{cs,vb}]
dotnet_analyzer_diagnostic.category-Style.severity = none

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

Ayrıca bkz.