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


Преобразование в операторы верхнего уровня (IDE0210)

Свойство Ценность
идентификатор правила IDE0210
Заголовок Преобразование в выражения верхнего уровня
Категория Стиль
Подкатегория Языковые правила (настройки блока кода)
применимые языки C# 9+
Параметры csharp_style_prefer_top_level_statements

Обзор

Это правило указывает на использование точки входа метода Main в проекте, который можно вместо этого преобразовать в инструкции верхнего уровня. Метод-кандидат должен соответствовать следующим требованиям:

  • Это static.
  • Называется Main.
  • Имеет тело метода.
  • Не имеет параметров типа.
  • Содержится в типе, который не public, не является производным от другого типа или реализации интерфейса, не является вложенным типом и не имеет атрибутов или комментариев документации.

Параметры

Параметры указывают поведение, которое требуется применить правило. Сведения о настройке параметров см. в опции формата .

csharp_style_prefer_top_level_statements

Свойство Ценность Описание
название параметра csharp_стиль_предпочитать_заявления_верхнего_уровня
значения опций true Предпочитайте инструкции верхнего уровня.
false Отключает правило.
значение параметра по умолчанию true

Пример

// Code with violations.
internal class Program
{
    private static void Main(string[] args)
    {
        Console.WriteLine("Hello world.");
    }
}

// Fixed code.
Console.WriteLine("Hello world.");

Подавление предупреждения

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

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

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

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

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

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

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

См. также