Udostępnij za pośrednictwem


Użyj dopasowania wzorca (operatornot) (IDE0083)

Własność Wartość
identyfikator reguły IDE0083
Tytuł Użyj dopasowywania wzorca (operatornot)
Kategoria Styl
podkategorii Reguły języka (preferencje dopasowywania wzorców)
Języki używane C# 9.0+
Opcje csharp_style_prefer_not_pattern

Przegląd

Ta reguła stylu dotyczy użycia wzorca języka C# 9.0 not, jeśli jest to możliwe.

Opcje

Opcje określają zachowanie, które ma być wymuszane przez regułę. Aby uzyskać informacje na temat konfigurowania opcji, zobacz Format opcji.

csharp_style_prefer_not_pattern

Własność Wartość Opis
nazwa opcji csharp_style_prefer_not_pattern
wartości opcji true Preferuj używanie wzorca not, jeśli jest to możliwe
false Preferuj , a nie, aby użyć wzorca not.
domyślna wartość opcji true

Notatka

Gdy opcja jest ustawiona na false, analizator nie flagi używa wzorca not. Jednak każdy wygenerowany kod nie będzie używać wzorca not. Po ustawieniu opcji na truekod, który nie używa wzorca not, jest oflagowany, a każdy wygenerowany kod używa wzorca not, jeśli ma to zastosowanie.

W poniższych przykładach pokazano, jak kod będzie generowany przez funkcje generowania kodu, gdy opcja jest ustawiona na true lub 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);

Pomijanie ostrzeżenia

Jeśli chcesz pominąć tylko jedno naruszenie, dodaj dyrektywy preprocesora do pliku źródłowego, aby wyłączyć, a następnie ponownie włączyć regułę.

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

Aby wyłączyć regułę dla pliku, folderu lub projektu, ustaw jego ważność na none w pliku konfiguracji .

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

Aby wyłączyć wszystkie reguły stylu kodu, ustaw poziom ważności dla kategorii Style na none w pliku konfiguracji .

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

Aby uzyskać więcej informacji, zobacz Jak pominąć ostrzeżenia analizy kodu.

Zobacz też