Ta bort onödig värdetilldelning (IDE0059)
Egenskap | Värde |
---|---|
regel-ID | IDE0059 |
Rubrik | Ta bort onödig värdetilldelning |
Kategori | Stil |
underkategori | Onödiga kodregler (inställningar på uttrycksnivå) |
Tillämpliga språk | C# och Visual Basic |
Alternativen | csharp_style_unused_value_assignment_preference |
visual_basic_style_unused_value_assignment_preference |
Överblick
Den här regeln flaggar onödiga värdetilldelningar. Till exempel:
// IDE0059: value written to 'v' is never
// read, so assignment to 'v' is unnecessary.
int v = Compute();
v = Compute2();
Du kan vidta någon av följande åtgärder för att åtgärda den här överträdelsen:
Om uttrycket till höger om tilldelningen inte har några bieffekter, tar du bort uttrycket eller hela tilldelningssatsen. Detta förbättrar prestandan genom att undvika onödig beräkning.
int v = Compute2();
Om uttrycket till höger om tilldelningen har sidoeffekter, ersätts vänstra sidan av tilldelningen med ett discard (endast C#) eller alternativt en lokal variabel som aldrig används. Att kassera värden förbättrar kodens tydlighet genom att uttryckligen visa avsikten att inte använda ett värde.
_ = Compute(); int v = Compute2();
Alternativ
Alternativen för detta anger om du vill använda en ignorerad eller en oanvänd lokal variabel:
- C# – csharp_style_unused_value_assignment_preference
- Visual Basic – visual_basic_style_unused_value_assignment_preference
Information om hur du konfigurerar alternativ finns i Alternativformat.
csharp_style_överblivna_värde_tilldelning_preferens
Egenskap | Värde | Beskrivning |
---|---|---|
Alternativnamn | csharp_stil_icke_använd_variabeltilldelningspreferens | |
Tillämpliga språk | C# | |
Alternativvärden | discard_variable |
Föredrar att använda en ignorera när du tilldelar ett värde som inte används |
unused_local_variable |
Föredrar att använda en lokal variabel när du tilldelar ett värde som inte används | |
standardalternativvärde | discard_variable |
// csharp_style_unused_value_assignment_preference = discard_variable
int GetCount(Dictionary<string, int> wordCount, string searchWord)
{
_ = wordCount.TryGetValue(searchWord, out var count);
return count;
}
// csharp_style_unused_value_assignment_preference = unused_local_variable
int GetCount(Dictionary<string, int> wordCount, string searchWord)
{
var unused = wordCount.TryGetValue(searchWord, out var count);
return count;
}
visual_basic_stil_overflödig_värde_tilldelning_preferens
Egenskap | Värde | Beskrivning |
---|---|---|
Alternativnamn | visual_basic_stil_icke_använd_värde_tilldelnings_preference | |
Tillämpliga språk | Visual Basic | |
Alternativvärden | unused_local_variable |
Föredrar att använda en lokal variabel när du tilldelar ett värde som inte används |
standardalternativvärde | unused_local_variable |
' visual_basic_style_unused_value_assignment_preference = unused_local_variable
Dim unused = Computation()
Undertrycka en varning
Om du bara vill förhindra en enda överträdelse lägger du till förprocessordirektiv i källfilen för att inaktivera och återaktiverar sedan regeln.
#pragma warning disable IDE0059
// The code that's violating the rule is on this line.
#pragma warning restore IDE0059
Om du vill inaktivera regeln för en fil, mapp eller ett projekt anger du dess allvarlighetsgrad till none
i konfigurationsfilen.
[*.{cs,vb}]
dotnet_diagnostic.IDE0059.severity = none
Om du vill inaktivera alla regler i kodformat anger du allvarlighetsgraden för kategorin Style
till none
i konfigurationsfilen .
[*.{cs,vb}]
dotnet_analyzer_diagnostic.category-Style.severity = none
Mer information finns i Så här utelämnar du kodanalysvarningar.
Egenskap | Värde |
---|---|
regel-ID | IDE0059 |
rubrik | Värdet används inte |
Kategori | Stil |
Tillämpliga språk | F# |
alternativ | Ingen |
Överblick
Den här regeln flaggar onödiga värdetilldelningar. Till exempel används answer
inte i följande kodfragment:
type T() =
let answer = 42