Асинхронизация и ожидание с HttpWebRequest.GetResponseAsync
Я пытаюсь использовать Async и Await при отправке веб-запроса и обнаруживаю, что он никогда не выходит за рамки ожидания. Я делаю это из приложения Metro, но я также проверил проблему в приложении winforms.
public async Task DoSomething()
{
string url = "http://imgur.com/gallery/VcBfl.json";
HttpWebRequest request = HttpWebRequest.CreateHttp(url);
var ws = await request.GetResponseAsync();
return ws.ResponseUri.ToString(); ;
}
Если я неиспользовать await и вместо этого выполнять синхронное ожидание, это работает, но мне нужно, чтобы он работал асинхронно.
Что я пропускаю в этом коде, который заставляет ожидание никогда не возвращаться?