Aracılığıyla paylaş


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 as ifadesi üzerinde C# desen eşleştirme 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 as ifadesinin kullanımını belirten IDE0260kuralı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_stili_null_kontrolü_ile_birlikte_as_değil_desen_eşleme_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 yapılandırma dosyasında none 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 yapılandırma dosyasında none 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.