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

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

Общие сведения

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

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

Варианты

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

csharp_style_prefer_top_level_statements

Свойство Значение Описание
Имя параметра csharp_style_prefer_top_level_statements
Значения параметра 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

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

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

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

См. также раздел