Condividi tramite


Usare il pattern matching per evitare 'as' seguito da un controllo per 'null' (IDE0019)

Proprietà Valore
ID regola IDE0019
Titolo Usare il riconoscimento di schemi per evitare as seguito da un controllo null
categoria Stile
sottocategoria Regole della lingua (preferenze di corrispondenza di schemi)
lingue applicabili C#
Opzioni csharp_style_pattern_matching_over_as_with_null_check

Panoramica

Questa regola di stile riguarda l'uso di C# criteri di ricerca su un'espressione as seguita da un controllo null. Questa regola è simile a IDE0260, che contrassegna l'uso di un'espressione as seguita da un membro letto tramite l'operatore condizionale Null.

Opzioni

L'opzione associata per questa regola specifica se preferire la corrispondenza di pattern o un'espressione di tipo as con controlli null per determinare se qualcosa è di un particolare tipo.

Per altre informazioni sulla configurazione delle opzioni, vedere Formato opzione.

Preferenza per il pattern matching in C# al posto di "as" con controllo null

Questa opzione configura anche la regola IDE0260.

Proprietà Valore Descrizione
nome opzione csharp_stile_confronto_modelli_al_posto_di_as_con_controllo_null
valori di opzione true Preferire il pattern matching per determinare se un elemento è di un tipo specifico
false Preferire espressioni as con controllo null per determinare se un elemento è di un tipo specifico
valore di opzione predefinito true
// csharp_style_pattern_matching_over_as_with_null_check = true
if (o is string s) {...}

// csharp_style_pattern_matching_over_as_with_null_check = false
var s = o as string;
if (s != null) {...}

Eliminare un avviso

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

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

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

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

Per disabilitare tutte le regole di tipo codice, impostare la gravità per la categoria Style su none 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.

Vedere anche