Unnötigen Ausdruckswert entfernen (IDE0058)

Eigenschaft Wert
Regel-ID IDE0058
Titel Unnötigen Ausdruckswert entfernen
Kategorie Stil
Unterkategorie Sprachregeln (Einstellungen auf Ausdrucksebene)
Gültige Sprachen C# und Visual Basic
Optionen csharp_style_unused_value_expression_statement_preference
visual_basic_style_unused_value_expression_statement_preference

Übersicht

Diese Regel kennzeichnet nicht verwendete Ausdruckswerte. Beispiel:

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

int Compute();

Benutzer können eine der folgenden Maßnahmen ergreifen, um diesen Verstoß zu korrigieren:

  • Wenn der Ausdruck keine Nebenwirkungen hat, entfernen Sie die gesamte Anweisung. Dadurch wird die Leistung verbessert, da unnötige Berechnungen vermieden werden.

  • Wenn der Ausdruck Nebenwirkungen hat, ersetzen Sie die linke Seite der Zuweisung durch eine Ausschussvariable(nur C#) oder eine lokale Variable, die nie verwendet wird. Dadurch wird die Codeschärfe verbessert, indem explizit die Absicht angezeigt wird, einen nicht verwendeten Wert zu verwerfen.

    _ = Compute();
    

Optionen

Die Optionen hierfür geben an, ob die Verwendung einer verworfenen oder nicht verwendeten lokalen Variablen bevorzugt werden soll:

Informationen zum Konfigurieren von Optionen finden Sie unter Optionsformat.

csharp_style_unused_value_expression_statement_preference

Eigenschaft Wert Beschreibung
Name der Option csharp_style_unused_value_expression_statement_preference
Gültige Sprachen C#
Optionswerte discard_variable Bevorzugt einen nicht genutzten Ausdruck einer Ausschussvariable
unused_local_variable Bevorzugt die Zuweisung eines nicht genutzten Ausdrucks zu einer lokalen Variable, die nie verwendet wird
Standardoptionswert 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");

visual_basic_style_unused_value_expression_statement_preference

Eigenschaft Wert Beschreibung
Name der Option visual_basic_style_unused_value_expression_statement_preference
Gültige Sprachen Visual Basic
Optionswerte unused_local_variable Bevorzugt die Zuweisung eines nicht genutzten Ausdrucks zu einer lokalen Variable, die nie verwendet wird
Standardoptionswert unused_local_variable
' visual_basic_style_unused_value_expression_statement_preference = unused_local_variable
Dim unused = Computation()

Unterdrücken einer Warnung

Um nur eine einzelne Verletzung zu unterdrücken, fügen Sie der Quelldatei Präprozessoranweisungen hinzu, um die Regel zu deaktivieren und dann wieder zu aktivieren.

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

Um die Regel für eine Datei, einen Ordner oder ein Projekt zu deaktivieren, legen Sie den Schweregrad in der Konfigurationsdatei auf none fest.

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

Um alle Regeln im Code-Stil zu deaktivieren, setzen Sie den Schweregrad für die Kategorie in der KonfigurationsdateiStyle auf none.

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

Weitere Informationen finden Sie unter Vorgehensweise: Unterdrücken von Codeanalyse-Warnungen.

Siehe auch