Condividi tramite


Operatore di eliminazione non necessario (IDE0080)

Proprietà Valore
ID regola IDE0080
Titolo Rimuovere l'operatore di eliminazione non necessario
Categoria Stile
Subcategory Regole di codice non necessarie (preferenze a livello di espressione)
Lingue applicabili C#

Panoramica

Questa regola contrassegna un operatore di eliminazione non necessario o null-forgiving. L'operatore non è necessario quando viene usato in un contesto in cui non ha alcun effetto. L'uso dell'operatore di eliminazione, ad esempio , x!dichiara che l'espressione x di un tipo riferimento non è Null. Tuttavia, se usato in un contesto di un altro operatore, ad esempio, l'operatore is in o !is stringnon ha alcun effetto e può essere rimosso.

Opzioni

Questa regola non include opzioni di tipo codice associate.

Esempio

// Code with violations
if (o !is string) { }

// Potential fixes:
// 1.
if (o is not string) { }

// 2.
if (!(o is string)) { }

// 3.
if (o is string) { }

Eliminare un avviso

Se si vuole eliminare solo una singola violazione, aggiungere direttive del preprocessore al file di origine per disabilitare e quindi riabilitare la regola.

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

Per disabilitare la regola per un file, una cartella o un progetto, impostarne la gravità none su nel file di configurazione.

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

Per disabilitare tutte le regole in stile codice, impostare la gravità per la categoria Stylenone su nel file di configurazione.

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

Per altre informazioni, vedere Come eliminare gli avvisi di analisi del codice.

Vedi anche