1

Async CTP SP1を使用してDownloadStringAsyncの代わりにDownloadStringTaskAsyncを使用するように、一連のWP7コードを変換しました。それは機能していなかったので、私は自分のコードをまとめて、次の2行になりました。

var wc = new WebClient();
var result = wc.DownloadStringTaskAsync("http://www.weather.gov").Result;

Windowsマシンのコンソールアプリでこのメソッドを実行した場合。期待どおりに機能し、weather.govの内容を含む文字列を取得します。空白のWP7アプリのAppのコンストラクターで同じ2行を実行すると、Resultが使用可能になるのを待っている間にハングします。

誰かが私がこれらの回線を修正して電話で動作するようにするのを手伝ってもらえますか?または、これはCTPのバグであり、今はスキップする必要があります。

4

1 に答える 1

2

Windows Phone は、UI スレッドで HTTP 要求を返します。にアクセスするResultと、UI スレッドがブロックされ、応答が返されなくなります。

非同期 CTP を使用していることを考えると、なぜブロックしたいのでしょうか?

var result = await wc.DownloadStringTaskAsync("http://www.weather.gov");
于 2011-06-23T06:31:01.257 に答える