Megosztás a következőn keresztül:


Szükségtelen érték hozzárendelésének eltávolítása (IDE0059)

Tulajdonság Érték
Szabályazonosító IDE0059
Cím Felesleges érték hozzárendelésének eltávolítása
Kategória Stílus
Alkategória Szükségtelen kódszabályok (kifejezésszintű beállítások)
Alkalmazandó nyelvek C# és Visual Basic
Beállítások csharp_style_unused_value_assignment_preference
visual_basic_style_unused_value_assignment_preference

Áttekintés

Ez a szabály szükségtelen érték-hozzárendeléseket jelöl. Például:

// IDE0059: value written to 'v' is never
// read, so assignment to 'v' is unnecessary.
int v = Compute();
v = Compute2();

A szabálysértés kijavításához hajtsa végre az alábbi műveletek egyikét:

  • Ha a hozzárendelés jobb oldalán lévő kifejezésnek nincsenek mellékhatásai, távolítsa el a kifejezést vagy a teljes hozzárendelési utasítást. Ez a szükségtelen számítások elkerülésével javítja a teljesítményt.

    int v = Compute2();
    
  • Ha a hozzárendelés jobb oldalán lévő kifejezésnek vannak mellékhatásai, cserélje le a hozzárendelés bal oldalát egy elvetésre (csak C# értékre) vagy egy soha nem használt helyi változóra. Az elvetések a nem használt értékek elvetésére vonatkozó szándék explicit megjelenítésével javítják a kód egyértelműségét.

    _ = Compute();
    int v = Compute2();
    

Beállítások

Ennek beállításai határozzák meg, hogy előnyben részesítse-e az elvetés vagy a nem használt helyi változó használatát:

A beállítások konfigurálásával kapcsolatos információkért tekintse meg az Option formátumot.

csharp_style_unused_value_assignment_preference

Tulajdonság Value Description
Beállítás neve csharp_style_unused_value_assignment_preference
Alkalmazandó nyelvek C#
Beállításértékek discard_variable Inkább elvetést használjon, ha nem használt értéket rendel hozzá
unused_local_variable Inkább helyi változót használjon, ha nem használt értéket rendel hozzá
Alapértelmezett beállításérték 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_style_unused_value_assignment_preference

Tulajdonság Value Description
Beállítás neve visual_basic_style_unused_value_assignment_preference
Alkalmazandó nyelvek Visual Basic
Beállításértékek unused_local_variable Inkább helyi változót használjon, ha nem használt értéket rendel hozzá
Alapértelmezett beállításérték unused_local_variable
' visual_basic_style_unused_value_assignment_preference = unused_local_variable
Dim unused = Computation()

Figyelmeztetés mellőzése

Ha csak egyetlen szabálysértést szeretne letiltani, adjon hozzá előfeldolgozási irányelveket a forrásfájlhoz a szabály letiltásához és újbóli engedélyezéséhez.

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

Ha le szeretné tiltani egy fájl, mappa vagy projekt szabályát, állítsa annak súlyosságát none a konfigurációs fájlban.

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

Az összes kódstílus-szabály letiltásához állítsa be a kategória Style súlyosságát none a konfigurációs fájlban.

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

További információ: Kódelemzési figyelmeztetések letiltása.

Tulajdonság Érték
Szabályazonosító IDE0059
Cím Az érték nincs használatban
Kategória Stílus
Alkalmazandó nyelvek F#
Beállítások None

Áttekintés

Ez a szabály szükségtelen érték-hozzárendeléseket jelöl. Például answer a következő kódrészlet nem használható:

type T() =
    let answer = 42

Kapcsolódó információk