Använd mönstermatchning för att undvika "som" följt av en null-kontroll (IDE0019)
Egenskap | Värde |
---|---|
Regel-ID | IDE0019 |
rubrik | Använd mönstermatchning för att undvika as som följs av en null -kontroll. |
Kategori | Stil |
underkategori | Språkregler (inställningar för mönstermatchning) |
Tillämpliga språk | C# |
alternativ | csharp_style_pattern_matching_over_as_with_null_check |
Överblick
Den här formatregeln gäller användningen av C# mönster som matchar över ett as
uttryck följt av en null
kontroll. Den här regeln liknar IDE0260, som flaggar användningen av ett as
uttryck följt av en medlem som läss via null-villkorsoperatorn.
Alternativ
Det associerade alternativet för den här regeln anger om mönstermatchning ska föredras eller ett as
uttryck med null-kontroller för att avgöra om något är av en viss typ.
Mer information om hur du konfigurerar alternativ finns i Alternativformat.
csharp_stil_mönstermatchning_över_as_med_nullkontroll
Det här alternativet konfigurerar även regel IDE0260.
Egenskap | Värde | Beskrivning |
---|---|---|
Alternativnamn | csharp_stil_mönsterbaserad_matchning_över_as_med_nullkontroll | |
Alternativvärden | true |
Föredrar mönstermatchning för att avgöra om något är av en viss typ |
false |
Föredrar as uttryck med null-kontroller för att avgöra om något är av en viss typ |
|
standardalternativvärde | 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) {...}
Undertrycka en varning
Om du bara vill förhindra en enda överträdelse lägger du till förprocessordirektiv i källfilen för att inaktivera och återaktiverar sedan regeln.
#pragma warning disable IDE0019
// The code that's violating the rule is on this line.
#pragma warning restore IDE0019
Om du vill inaktivera regeln för en fil, mapp eller ett projekt anger du dess allvarlighetsgrad till none
i konfigurationsfilen.
[*.{cs,vb}]
dotnet_diagnostic.IDE0019.severity = none
Om du vill inaktivera alla regler i kodformat anger du allvarlighetsgraden för kategorin Style
till none
i konfigurationsfilen .
[*.{cs,vb}]
dotnet_analyzer_diagnostic.category-Style.severity = none
Mer information finns i Så här utelämnar du kodanalysvarningar.