Удалите назначение лишних значений (IDE0059)
Свойство | Значение |
---|---|
Идентификатор правила | IDE0059 |
Заголовок | Удалите назначение лишних значений |
Категория | Стиль |
Подкатегории | Ненужные правила кода (предпочтения уровня выражения) |
Применимые языки | C# и Visual Basic |
Options (Параметры) | csharp_style_unused_value_assignment_preference |
visual_basic_style_unused_value_assignment_preference |
Обзор
Это правило помечает назначения лишних значений. Например:
// IDE0059: value written to 'v' is never
// read, so assignment to 'v' is unnecessary.
int v = Compute();
v = Compute2();
Чтобы устранить это нарушение, выполните одно из следующих действий:
Если выражение в правой части назначения не имеет побочных эффектов, удалите выражение или весь оператор назначения. Это повышает производительность за счет предотвращения ненужных вычислений.
int v = Compute2();
Если выражение справа от назначения имеет побочные эффекты, замените левую сторону назначения дис карта (только C#) или локальную переменную, которая никогда не использовалась. Dis карта s улучшает ясность кода, явно показывая намерение неиспользуемого значения карта неиспользуемого значения.
_ = Compute(); int v = Compute2();
Параметры
Параметры для этого указывают, следует ли использовать неиспользуемую локальную переменную карта или неиспользуемую локальную переменную:
- C# — csharp_style_unused_value_assignment_preference
- Visual Basic — visual_basic_style_unused_value_assignment_preference
Сведения о настройке параметров см . в разделе "Формат параметров".
csharp_style_unused_value_assignment_preference
Свойство | Значение | Описание |
---|---|---|
Имя параметра | csharp_style_unused_value_assignment_preference | |
Применимые языки | C# | |
Значения параметра | discard_variable |
Предпочитайте использовать дис карта при назначении значения, которое не используется |
unused_local_variable |
Предпочитать использовать локальную переменную при назначении значения, которое не используется | |
Значение параметра по умолчанию | 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
Свойство | Значение | Описание |
---|---|---|
Имя параметра | visual_basic_style_unused_value_assignment_preference | |
Применимые языки | Visual Basic | |
Значения параметра | unused_local_variable |
Предпочитать использовать локальную переменную при назначении значения, которое не используется |
Значение параметра по умолчанию | unused_local_variable |
' visual_basic_style_unused_value_assignment_preference = unused_local_variable
Dim unused = Computation()
Отключение предупреждений
Если вы хотите отключить только одно нарушение, добавьте директивы препроцессора в исходный файл, чтобы отключить и повторно включить правило.
#pragma warning disable IDE0059
// The code that's violating the rule is on this line.
#pragma warning restore IDE0059
Чтобы отключить правило для файла, папки или проекта, задайте его серьезность none
в файле конфигурации.
[*.{cs,vb}]
dotnet_diagnostic.IDE0059.severity = none
Чтобы отключить все правила стиля кода, задайте уровень серьезности для категории Style
none
в файле конфигурации.
[*.{cs,vb}]
dotnet_analyzer_diagnostic.category-Style.severity = none
Дополнительные сведения см. в разделе Практическое руководство. Скрытие предупреждений анализа кода.
Свойство | Значение |
---|---|
Идентификатор правила | IDE0059 |
Заголовок | Значение не используется |
Категория | Стиль |
Применимые языки | F# |
Options (Параметры) | нет |
Обзор
Это правило помечает назначения лишних значений. Например, answer
не используется в следующем фрагменте кода:
type T() =
let answer = 42