Удаление ненужных лямбда-выражений (IDE0200)
Статья 09.02.2025
1 участник
Обратная связь
В этой статье
Обзор
Варианты
Пример
Подавление предупреждения
См. также
Развернуть таблицу
Недвижимость
Ценность
идентификатор правила
IDE0200
Заголовок
Удаление ненужного лямбда-выражения
категория
Стиль
Подкатегория
Языковые правила (настройки блока кода)
применимые языки
C# 11+
Опции
csharp_style_prefer_method_group_conversion
Это правило помечает использование лямбда-выражения, где это не нужно. Лямбда-выражения могут быть ненужными, если все это верно:
Выражение включает вызов метода.
Лямбда-выражение имеет то же число и порядок параметров, что и вызов метода.
Вызов метода не имеет побочных эффектов.
Лямбда-выражение не назначается типу, отличному от делегата.
Если вызов является универсальным методом, аргументы типа предоставляются.
Возвращаемый тип вызываемого метода можно преобразовать в возвращаемый тип лямбда-выражения.
В группе методов существует только один применимый метод.
Параметры указывают поведение, которое вы хотите, чтобы правило обеспечивало. Для получения информации о настройке параметров см. Формат параметра .
csharp_style_prefer_method_group_conversion
Развернуть таблицу
Свойство
Ценность
Описание
Имя опции
csharp_style_prefer_method_group_conversion
значения опций
true
Предпочитаете преобразовать лямбда-выражение в группу методов.
false
Отключает правило.
значение параметра по умолчанию
true
bool IsEven (int x ) => x % 2 == 0 ;
_ = new [] { 1 , 2 , 3 }.Where(n => IsEven(n));
bool IsEven (int x ) => x % 2 == 0 ;
_ = new [] { 1 , 2 , 3 }.Where(IsEven);
Подавление предупреждения
Если вы хотите отключить только одно нарушение, добавьте директивы препроцессора в исходный файл, чтобы отключить и повторно включить правило.
#pragma warning disable IDE0200
#pragma warning restore IDE0200
Чтобы отключить правило для файла, папки или проекта, задайте его серьезность none
в файле конфигурации .
[*.{cs,vb}]
dotnet_diagnostic.IDE0200.severity = none
Чтобы отключить все правила стиля кода, задайте уровень серьезности для категории Style
, чтобы none
в файле конфигурации .
[*.{cs,vb}]
dotnet_analyzer_diagnostic.category-Style.severity = none
Дополнительные сведения см. в статье Подавление предупреждений анализа кода .