Поделиться через


Удаление ненужных подавлений (IDE0370)

Недвижимость Ценность
Идентификатор правила IDE0370
Заголовок Удалить ненужное подавление
Категория Style
Подкатегории Ненужные правила кода (предпочтения подавления)
Применимые языки C#
Параметры None

Обзор

Это правило определяет ненужные подавления предупреждений, допускающих значение NULL, с помощью оператора,допускающего значение NULL (!). Оператор, допускающий значение NULL, сообщает компилятору, что значение не равно NULL, которое подавляет предупреждения для ссылочных типов, допускающих значение NULL. Однако если компилятор уже может определить, что значение не равно null, оператор, игнорирующий null, не нужен и может быть удален.

Example

// Code with violations.
#nullable enable

void ProcessValue()
{
    List<string> names = new()!;
}

// Fixed code.
#nullable enable

void ProcessValue()
{
    List<string> names = new(); // No suppression needed.
}

Отключение предупреждений

Если вы хотите отключить только одно нарушение, добавьте директивы препроцессора в исходный файл, чтобы отключить и повторно включить правило.

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

Чтобы отключить правило для файла, папки или проекта, задайте его серьезность none в файле конфигурации.

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

Чтобы отключить все правила стиля кода, задайте уровень серьезности для категории Stylenone в файле конфигурации.

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

Дополнительные сведения см. в разделе "Подавление предупреждений анализа кода".

См. также