Použití porovnávání vzorů, abyste se vyhnuli kontrole "as" následované kontrolou null (IDE0019)

Vlastnost Hodnota
ID pravidla IDE0019
Název Použití porovnávání vzorů, abyste se vyhnuli asnull následné kontrole
Kategorie Styl
Subcategory Pravidla jazyka (předvolby porovnávání vzorů)
Příslušné jazyky C#
Možnosti csharp_style_pattern_matching_over_as_with_null_check

Přehled

Toto pravidlo stylu se týká použití porovnávání vzorů jazyka C# s výrazem as a následnou kontrolou null . Toto pravidlo se podobá ide0260, které označuje použití výrazu as následovaného členem, který přečte prostřednictvím operátoru s podmínkou null.

Možnosti

Přidružená možnost pro toto pravidlo určuje, zda se má upřednostňovat shoda vzorů as , nebo výraz s kontrolami hodnoty null, aby se zjistilo, jestli je něco konkrétního typu.

Další informace o konfiguraci možností najdete v tématu Formát možnosti.

csharp_style_pattern_matching_over_as_with_null_check

Tato možnost také konfiguruje pravidlo IDE0260.

Vlastnost Hodnota Popis
Název možnosti csharp_style_pattern_matching_over_as_with_null_check
Hodnoty možností true Upřednostněte porovnávání vzorů, abyste zjistili, jestli je něco konkrétního typu.
false Upřednostněte as výrazy s kontrolami hodnoty null, abyste zjistili, jestli je něco konkrétního typu.
Výchozí hodnota možnosti 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) {...}

Potlačení upozornění

Pokud chcete potlačit pouze jedno porušení, přidejte do zdrojového souboru direktivy preprocesoru, aby se pravidlo zakázalo a znovu povolte.

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

Pokud chcete pravidlo pro soubor, složku nebo projekt zakázat, nastavte jeho závažnost none na v konfiguračním souboru.

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

Pokud chcete zakázat všechna pravidla stylu kódu, nastavte v konfiguračním souboru závažnost kategorie Style na none .

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

Další informace najdete v tématu Jak potlačit upozornění analýzy kódu.

Viz také