Удаление ненужных значений выражения (IDE0058)
Свойство | Ценность |
---|---|
идентификатор правила | IDE0058 |
Заголовок | Удаление ненужных значений выражения |
Категория | Стиль |
подкатегория | Языковые правила (предпочтения уровня выражений) |
применимые языки | C# и Visual Basic |
Опции | csharp_style_unused_value_expression_statement_preference |
visual_basic_style_unused_value_expression_statement_preference |
Обзор
Это правило помечает неиспользуемые значения выражений. Например:
void M()
{
Compute(); // IDE0058: computed value is never used.
}
int Compute();
Чтобы устранить это нарушение, выполните одно из следующих действий:
Если выражение не имеет побочных эффектов, удалите всю инструкцию. Это повышает производительность, избегая ненужных вычислений.
Если выражение имеет побочные эффекты, замените левую сторону присваивания на discard (только C#) или на локальную переменную, которая никогда не используется. Это повышает ясность кода, явно показывая намерение отменить неиспользуемое значение.
_ = Compute();
Параметры
Параметры для этого указывают, следует ли использовать отмену или неиспользуемую локальную переменную:
- C# — csharp_style_unused_value_expression_statement_preference
- Visual Basic — visual_basic_style_unused_value_expression_statement_preference
Сведения о настройке формата параметров см. в .
csharp_style_unused_value_expression_statement_preference
Свойство | Ценность | Описание |
---|---|---|
имя параметра | csharp_style_unused_value_expression_statement_preference | |
применимые языки | C# | |
значения опций | discard_variable |
Предпочитайте назначать неиспользуемое выражение переменной-пустышке |
unused_local_variable |
Предпочитать назначать неиспользуемое выражение локальной переменной, которая никогда не использовалась | |
значение параметра по умолчанию | discard_variable |
// Original code:
System.Convert.ToInt32("35");
// After code fix for IDE0058:
// csharp_style_unused_value_expression_statement_preference = discard_variable
_ = System.Convert.ToInt32("35");
// csharp_style_unused_value_expression_statement_preference = unused_local_variable
var unused = Convert.ToInt32("35");
предпочтение_оператора_выражения_с_неиспользуемым_значением_в_стиле_visual_basic
Собственность | Ценность | Описание |
---|---|---|
имя параметра | стиль_visual_basic_предпочтение_выражения_с_неиспользуемым_значением_в_операторе | |
применимые языки | Visual Basic | |
значения опций | unused_local_variable |
Предпочитать назначать неиспользуемое выражение локальной переменной, которая никогда не использовалась |
значение параметра по умолчанию | unused_local_variable |
' visual_basic_style_unused_value_expression_statement_preference = unused_local_variable
Dim unused = Computation()
Подавление предупреждения
Если вы хотите отключить только одно нарушение, добавьте директивы препроцессора в исходный файл, чтобы отключить и повторно включить правило.
#pragma warning disable IDE0058
// The code that's violating the rule is on this line.
#pragma warning restore IDE0058
Чтобы отключить правило для файла, папки или проекта, задайте его серьезность none
в файле конфигурации .
[*.{cs,vb}]
dotnet_diagnostic.IDE0058.severity = none
Чтобы отключить все правила стиля кода, задайте уровень серьезности для категории Style
, чтобы none
в файле конфигурации .
[*.{cs,vb}]
dotnet_analyzer_diagnostic.category-Style.severity = none
Дополнительные сведения см. в статье Подавление предупреждений анализа кода.
См. также
- Удаление ненужных присвоений значений (IDE0059)
- справочник по правилам стиля кода