错误消息“CS5001程序不包含适用于入口点的静态'Main'方法”

时间:2017-12-01 07:26:51

标签: c# console visual-studio-2017 console-application .net-core-2.0

无法执行以下代码 错误CS5001程序不包含适用于入口点的静态“主”方法

此错误消息的含义是什么?

class Program
{
    static async Task MainAsync(string[] args)
    {
        Account.accountTest accountTest = new Account.accountTest();

        bool result = await accountTest.CreateAccountAsync();
    }
}

1 个答案:

答案 0 :(得分:132)

这意味着您目前没有适合您的应用的入口点。

该代码将几乎与C#7.1协同工作,但您需要在项目文件中明确启用C#7.1:

<LangVersion>7.1</LangVersion>

或更一般地说:

<LangVersion>latest</LangVersion>

您还需要将MainAsync重命名为Main。例如:

的Program.cs:

using System.Threading.Tasks;

class Program
{
    static async Task Main(string[] args)
    {
        await Task.Delay(1000);
    }
}

ConsoleApp.csproj:

<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
    <OutputType>Exe</OutputType>
    <TargetFramework>netcoreapp2.0</TargetFramework>
    <LangVersion>7.1</LangVersion>
  </PropertyGroup>
</Project>

...构建并运行良好。