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:
- C# - csharp_style_unused_value_expression_statement_preference
- Visual Basic - visual_basic_style_unused_value_expression_statement_preference
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.