Desen eşleştirme kullanarak 'as' ve ardından 'null' denetimini önleyin (IDE0019).

Mülk Değer
kural kimliği IDE0019
Başlık as ve ardından null denetiminden kaçınmak için desen eşleştirmeyi kullanma
Kategori Üslup
Alt Kategori Dil kuralları (desen eşleştirme tercihleri)
Geçerli diller C#
Seçenekleri csharp_style_pattern_matching_over_as_with_null_check

Genel bakış

Bu stil kuralı, bir ifadesi üzerinde C# as ve ardından bir null denetimi kullanılmasıyla ilgilidir. Bu kural, null koşullu işleç aracılığıyla okunan bir üyenin ardından gelen bir ifadesinin kullanımını belirten askuralına benzer.

Seçenekler

Bu kural için ilişkili seçenek, bir şeyin belirli bir türe sahip olup olmadığını belirlemek için desen eşleşmesinin mi yoksa null denetimli bir as ifadesinin mi tercih edileceğini belirtir.

Seçenekleri yapılandırma hakkında daha fazla bilgi için bkz. Seçenek biçimi.

csharp_style: as ile null kontrolü yerine desen eşleştirme kullanımı

Bu seçenek IDE0260kuralı da yapılandırıyor.

Mülk Değer Açıklama
Seçenek adı csharp_style: as ile null kontrolü yerine desen eşleştirme kullanımı
Seçenek değerleri true Belirli bir türe sahip olup olmadığını belirlemek için desen eşleştirmeyi tercih edin
false Bir şeyin belirli bir türde olup olmadığını belirlemek için null denetimlerle as ifadeleri tercih edin
varsayılan seçenek değeri true
// csharp_style_pattern_matching_over_as_with_null_check = true
if (o is string s) {...}

// csharp_style_pattern_matching_over_as_with_null_check = false
var s = o as string;
if (s != 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 ön işlemci yönergeleri ekleyin.

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

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

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

Tüm kod stili kurallarını devre dışı bırakmak için kategori Style önem derecesini noneyapı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.