【发布时间】:2012-03-27 18:03:37
【问题描述】:
我在 Win8 CP 上基于 xaml 的C# metro 应用程序内部进行了调用;此调用只是访问一个 Web 服务并返回 JSON 数据。
HttpMessageHandler handler = new HttpClientHandler();
HttpClient httpClient = new HttpClient(handler);
httpClient.BaseAddress = new Uri("http://192.168.1.101/api/");
var result = await httpClient.GetStreamAsync("weeklyplan");
DataContractJsonSerializer ser = new DataContractJsonSerializer(typeof(WeeklyPlanData[]));
return (WeeklyPlanData[])ser.ReadObject(result);
它挂在await,但 http 调用实际上几乎立即返回(通过提琴手确认);就好像await 被忽略了,它就挂在那里。
在您询问之前 - 是 - 专用网络功能已打开。
任何想法为什么会挂起?
【问题讨论】:
-
你怎么称呼
async方法?不会抛出异常吗?
标签: c# asynchronous async-await dotnet-httpclient