Anteckning
Å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