私のコードブロック:
Dispatcher.BeginInvoke(() => {
var Users = GetUsers().Result;
// proceed...
}
private Task<List<User>> GetUsers()
{
var tcs = new TaskCompletionSource<List<User>>();
wbclient.DownloadStringCompleted += (o, e) => {
if (e.Error == null)
tcs.SetResult(JsonConvert.DeserializeObject<List<User>>(e.Result));
else
tcs.TrySetException(e.Error);
};
wbclient.DownloadStringAsync(someUri);
return tcs.Task;
}
先に進む前に、すべてのユーザーを取得したいと考えています。だから私はGetUser
ディスパッチャーでメソッドを呼び出しています。DownloadStringCompleted
イベントが発生するまで待ってから戻りたいだけです。しかし、上記のコードでは UI がフリーズします。どんな助けでも大歓迎です。
ノート:
windows-phone 7
サポートしていないを使用していますasync
await