Udostępnij za pomocą


Usuwanie niepotrzebnego tłumienia (IDE0370)

Majątek Wartość
Identyfikator reguły IDE0370
Tytuł Usuwanie niepotrzebnej supresji
Kategoria Styl
Podkategorii Niepotrzebne reguły kodu (preferencje pomijania)
Zastosowane języki C#
Options Żaden

Przegląd

Ta reguła identyfikuje niepotrzebne zastosowania wyłączenia ostrzeżeń dotyczących wartości null przy użyciu operatora wybaczającego null (!). Operator ignorujący brak wartości informuje kompilator, że dana wartość nie jest null, dzięki czemu pomija ostrzeżenia dla typów referencyjnych dopuszczających null. Jednak gdy kompilator może już określić, że wartość nie jest null, operator ignorujący null jest niepotrzebny i można go usunąć.

Example

// Code with violations.
#nullable enable

void ProcessValue()
{
    List<string> names = new()!;
}

// Fixed code.
#nullable enable

void ProcessValue()
{
    List<string> names = new(); // No suppression needed.
}

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

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

[*.{cs,vb}]
dotnet_diagnostic.IDE0370.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 także