Not
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
| 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