编译器错误 CS5001
程序不包含适合于入口点的静态“Main”方法
当用于生成可执行文件的代码内未找到具有正确签名的静态 Main
方法时,将出现此错误。 如果用错误的大小写(例如小写的 main
)定义了入口点函数 Main
,则也将出现此错误。 有关应用于 Main
方法的规则的信息,请参阅 Main() 和命令行参数。
如果 Main
方法有一个 async
修饰符,请确保所选的 C# 语言版本是 7.1 或更高,并使用 Task
或 Task<int>
作为返回类型。
只有在编译可执行文件时才需要 Main
方法,即在指定了 TargetType 编译器选项中的 exe 或 winexe 元素时。 默认情况下,Visual Studio 项目类型指定以下选项之一:
- 控制台应用程序
- ASP.NET Core 应用程序
- WPF 应用程序
- Windows 窗体应用程序
下面的示例生成 CS5001:
C#
// CS5001.cs
// CS5001 expected when compiled with -target:exe or -target:winexe
public class Program
{
// Uncomment the following line to resolve.
// static void Main() {}
}