Преобразование в операторы верхнего уровня (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
Чтобы отключить все правила в стиле кода, задайте серьезность для категории Style
none
в файле конфигурации.
[*.{cs,vb}]
dotnet_analyzer_diagnostic.category-Style.severity = none
Дополнительные сведения см. в разделе Практическое руководство. Скрытие предупреждений анализа кода.