Я пытаюсь создать простую программу для тестирования новой функции .NET async в Visual Studio 2012. Обычно я использую BackgroundWorkers для выполнения многозадачного кода асинхронно, но иногда это кажется затруднительным для относительно простого (но дорогой). Новый модификатор async выглядит так, как было бы здорово использовать, но, к сожалению, я просто не могу получить простой тест.
Здесь мой код, в приложении консоли С#:
static void Main(string[] args)
{
string MarsResponse = await QueryRover();
Console.WriteLine("Waiting for response from Mars...");
Console.WriteLine(MarsResponse);
Console.Read();
}
public static async Task<string> QueryRover()
{
await Task.Delay(5000);
return "Doin' good!";
}
Я проверил несколько примеров в MSDN и мне кажется, что этот код должен работать, но вместо этого я получаю ошибку сборки в строке, содержащей "ожидание QueryRover()"; Я схожу с ума или что-то подозрительное?