Leggi in inglese

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:

C#
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.

    C#
    _ = 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
C#
// 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
VB
' 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.

C#
#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 .

ini
[*.{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 .

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

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

Vedere anche