W pewnym momencie CoreCLR obsługiwał asynchroniczne główne punkty wejścia. Zobacz http://blog.stephencleary.com/2015/03/async-console-apps-on-net-coreclr.html
Jednak oba poniższe programy nie działają w .NET Core RTM
using System;
using System.Threading.Tasks;
namespace ConsoleApplication
{
public class Program
{
public static async Task Main(string[] args)
{
await Task.Delay(1000);
Console.WriteLine("Hello World!");
}
}
}
lub
using System;
using System.Threading.Tasks;
namespace ConsoleApplication
{
public class Program
{
public async Task Main(string[] args)
{
await Task.Delay(1000);
Console.WriteLine("Hello World!");
}
}
}
Oba kończą się niepowodzeniem z powodu błędu:
błąd CS5001: Program nie zawiera statycznej metody „Main” odpowiedniej dla punktu wejścia
Czy aplikacje konsoli asynchronicznej są obsługiwane w programie .NET Core RTM?
properties -> build -> advanced -> language version
typy kompilacji Debuguj i wydaj, w przeciwnym razie projekt nie powiedzie się po opublikowaniu.
async Main
obecnie planowane jest wsparcie dla języka C # 7.0 .