Dela via


Använda mönstermatchning (not operator) (IDE0083)

Property Värde
Regel-ID IDE0083
Rubrik Använda mönstermatchning (not operator)
Kategori Format
Underkategori Språkregler (inställningar för mönstermatchning)
Tillämpliga språk C# 9.0+
Alternativ csharp_style_prefer_not_pattern

Översikt

Den här formatregeln gäller användningen av C# 9.0-mönster notnär det är möjligt.

Alternativ

Alternativ anger det beteende som du vill att regeln ska framtvinga. Information om hur du konfigurerar alternativ finns i Alternativformat.

csharp_style_prefer_not_pattern

Property Värde beskrivning
Alternativnamn csharp_style_prefer_not_pattern
Alternativvärden true Föredrar att använda not mönstret när det är möjligt
false Föredrar att inte använda not mönstret.
Standardalternativvärde true

Kommentar

När alternativet är inställt på falseflaggar analysatorn inte användning av not mönstret. Men all kod som genereras använder not inte mönstret. När alternativet är inställt på trueflaggas kod som inte använder not mönstret och all kod som genereras använder not mönstret där det är tillämpligt.

I följande exempel visas hur kod genereras av kodgenererande funktioner när alternativet är inställt på antingen true eller false.

// csharp_style_prefer_not_pattern = true
var y = o is not C c;

// csharp_style_prefer_not_pattern = false
var y = !(o is C c);

Ignorera 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 IDE0083
// The code that's violating the rule is on this line.
#pragma warning restore IDE0083

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.IDE0083.severity = none

Om du vill inaktivera alla regler i kodformat anger du allvarlighetsgraden för kategorin Style till i konfigurationsfilen.none

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

Mer information finns i Så här utelämnar du kodanalysvarningar.

Se även