Ошибка компилятора CS5001

Программа не содержит статический метод Main, подходящий для точки входа

Эта ошибка возникает, если в коде, который создает исполняемый файл, не найден статический Main метод с правильной сигнатурой. Это также происходит, Mainесли функция точки входа , определена с неправильным регистром, например в нижнем регистре main. Сведения о правилах, применяемых к методу , см. в Main разделах Main() и Command-Line Arguments.

Main Если метод имеет модификаторasync, убедитесь, что выбрана версия языка C# 7.1 или выше, и в качестве типа возвращаемого значения следует использовать Task или Task<int> .

Метод Main является обязательным только при компиляции исполняемого файла, то есть при указании элемента exe или winexe параметра компилятора TargetType . Следующие типы проектов Visual Studio по умолчанию указывают один из этих параметров:

  • Консольное приложение
  • Приложение ASP.NET Core
  • приложение WPF
  • приложение Windows Forms

Пример

Следующий пример приводит к возникновению ошибки CS5001:

// CS5001.cs
// CS5001 expected when compiled with -target:exe or -target:winexe
public class Program
{
   // Uncomment the following line to resolve.
   // static void Main() {}
}