Usuwanie niepotrzebnego przypisania wartości (IDE0059)
Właściwości | Wartość |
---|---|
Identyfikator reguły | IDE0059 |
Tytuł | Usuwanie niepotrzebnego przypisania wartości |
Kategoria | Styl |
Podkategorii | Niepotrzebne reguły kodu (preferencje na poziomie wyrażenia) |
Odpowiednie języki | C# i Visual Basic |
Opcje | csharp_style_unused_value_assignment_preference |
visual_basic_style_unused_value_assignment_preference |
Omówienie
Ta reguła flaguje niepotrzebne przypisania wartości. Na przykład:
// IDE0059: value written to 'v' is never
// read, so assignment to 'v' is unnecessary.
int v = Compute();
v = Compute2();
Aby naprawić to naruszenie, możesz wykonać jedną z następujących czynności:
Jeśli wyrażenie po prawej stronie przypisania nie ma efektów ubocznych, usuń wyrażenie lub całą instrukcję przypisania. Poprawia to wydajność, unikając niepotrzebnych obliczeń.
int v = Compute2();
Jeśli wyrażenie po prawej stronie przypisania ma skutki uboczne, zastąp lewą stronę przypisania odrzuceniem (tylko C#) lub zmienną lokalną, która nigdy nie jest używana. Odrzucanie poprawia przejrzystość kodu, jawnie pokazując zamiar odrzucenia nieużywanej wartości.
_ = Compute(); int v = Compute2();
Opcje
Opcje tej opcji określają, czy preferować użycie odrzucenia, czy nieużywanej zmiennej lokalnej:
- C# — csharp_style_unused_value_assignment_preference
- Visual Basic — visual_basic_style_unused_value_assignment_preference
Aby uzyskać informacje na temat konfigurowania opcji, zobacz Format opcji.
csharp_style_unused_value_assignment_preference
Właściwości | Wartość | Opis |
---|---|---|
Nazwa opcji | csharp_style_unused_value_assignment_preference | |
Odpowiednie języki | C# | |
Wartości opcji | discard_variable |
Preferuj użycie odrzucenia podczas przypisywania wartości, która nie jest używana |
unused_local_variable |
Preferuj używanie zmiennej lokalnej podczas przypisywania wartości, która nie jest używana | |
Wartość opcji domyślnej | 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
Właściwości | Wartość | Opis |
---|---|---|
Nazwa opcji | visual_basic_style_unused_value_assignment_preference | |
Odpowiednie języki | Visual Basic | |
Wartości opcji | unused_local_variable |
Preferuj używanie zmiennej lokalnej podczas przypisywania wartości, która nie jest używana |
Wartość opcji domyślnej | unused_local_variable |
' visual_basic_style_unused_value_assignment_preference = unused_local_variable
Dim unused = Computation()
Pomijanie ostrzeżenia
Jeśli chcesz pominąć tylko jedno naruszenie, dodaj dyrektywy preprocesora do pliku źródłowego, aby wyłączyć, a następnie ponownie włączyć regułę.
#pragma warning disable IDE0059
// The code that's violating the rule is on this line.
#pragma warning restore IDE0059
Aby wyłączyć regułę dla pliku, folderu lub projektu, ustaw jego ważność na none
w pliku konfiguracji.
[*.{cs,vb}]
dotnet_diagnostic.IDE0059.severity = none
Aby wyłączyć wszystkie reguły stylu kodu, ustaw ważność dla kategorii Style
na none
w pliku konfiguracji.
[*.{cs,vb}]
dotnet_analyzer_diagnostic.category-Style.severity = none
Aby uzyskać więcej informacji, zobacz Jak pominąć ostrzeżenia dotyczące analizy kodu.
Właściwości | Wartość |
---|---|
Identyfikator reguły | IDE0059 |
Tytuł | Wartość jest nieużywany |
Kategoria | Styl |
Odpowiednie języki | F# |
Opcje | Brak |
Omówienie
Ta reguła flaguje niepotrzebne przypisania wartości. Na przykład answer
element jest nieużywany w następującym fragmencie kodu:
type T() =
let answer = 42
Zobacz też
Opinia
https://aka.ms/ContentUserFeedback.
Dostępne już wkrótce: W 2024 r. będziemy stopniowo wycofywać zgłoszenia z serwisu GitHub jako mechanizm przesyłania opinii na temat zawartości i zastępować go nowym systemem opinii. Aby uzyskać więcej informacji, sprawdź:Prześlij i wyświetl opinię dla