Udostępnij za pośrednictwem


Używanie dopasowania wzorca (not operator) (IDE0083)

Właściwości Wartość
Identyfikator reguły IDE0083
Stanowisko Używanie dopasowywania wzorca (not operator)
Kategoria Styl
Podkategorii Reguły języka (preferencje dopasowywania wzorców)
Odpowiednie języki C# 9.0+
Opcje csharp_style_prefer_not_pattern

Omówienie

Ta reguła stylu dotyczy użycia wzorca C# 9.0not, 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łaściwości Wartość Opis
Nazwa opcji csharp_style_prefer_not_pattern
Wartości opcji true Wolisz używać not wzorca, jeśli to możliwe
false Wolisz nie używać not wzorca.
Wartość opcji domyślnej true

Uwaga

Gdy opcja jest ustawiona na false, analizator nie flaguje użycia not wzorca. Jednak każdy wygenerowany kod nie będzie używać not wzorca. Gdy opcja jest ustawiona na true, kod, który nie używa not wzorca, jest oflagowany, a każdy wygenerowany kod używa not wzorca, 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 wartość 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 ważność 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 dotyczące analizy kodu.

Zobacz też