Condividi tramite


Rimuovere il valore dell'espressione non necessario (IDE0058)

Proprietà Valore
Regola ID IDE0058
Titolo Rimuovere il valore non necessario dell'espressione
Categoria Stile
sottocategoria Regole del linguaggio (preferenze a livello di espressione)
lingue applicabili C# e Visual Basic
Opzioni csharp_style_unused_value_expression_statement_preference
visual_basic_style_unused_value_expression_statement_preference

Panoramica

Questa regola contrassegna i valori di espressione inutilizzati. Per esempio:

void M()
{
  Compute(); // IDE0058: computed value is never used.
}

int Compute();

Per correggere questa violazione, è possibile eseguire una delle azioni seguenti:

  • Se l'espressione non ha effetti collaterali, rimuovere l'intera istruzione. Ciò migliora le prestazioni evitando calcoli non necessari.

  • Se l'espressione ha effetti collaterali, sostituire il lato sinistro dell'assegnazione con un eliminare (solo C#) o una variabile locale mai usata. Ciò migliora la chiarezza del codice mostrando in modo esplicito la finalità di eliminare un valore inutilizzato.

    _ = Compute();
    

Opzioni

Le opzioni per questo specificano se preferire l'uso di una variabile locale scartata o inutilizzata:

Per informazioni sulla configurazione delle opzioni, vedere Formato opzione.

csharp_style_unused_value_expression_statement_preference

Proprietà Valore Descrizione
nome opzione csharp_style_unused_value_expression_statement_preference
lingue applicabili C#
valori di opzione discard_variable Preferisce assegnare un'espressione inutilizzata a un'eliminazione
unused_local_variable Preferisce assegnare un'espressione inutilizzata a una variabile locale mai usata
valore di opzione predefinito discard_variable
// Original code:
System.Convert.ToInt32("35");

// After code fix for IDE0058:

// csharp_style_unused_value_expression_statement_preference = discard_variable
_ = System.Convert.ToInt32("35");

// csharp_style_unused_value_expression_statement_preference = unused_local_variable
var unused = Convert.ToInt32("35");

Preferenza_dichiarazione_espressione_valore_non_usato_stile_visual_basic

Proprietà Valore Descrizione
nome opzione Preferenza_per_istruzione_espressione_valore_nullo_stile_visual_basic
lingue applicabili Visual Basic
Valori di opzione unused_local_variable Preferisce assegnare un'espressione inutilizzata a una variabile locale mai usata
valore di opzione predefinito unused_local_variable
' visual_basic_style_unused_value_expression_statement_preference = unused_local_variable
Dim unused = Computation()

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

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.IDE0058.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