【发布时间】:2011-02-27 14:53:56
【问题描述】:
我多次调用这个异步 webrequest(根据条件可以是两次或三次甚至 6 次)
var request = HttpWebRequest.CreateHttp(url);
var observableRequest = Observable.FromAsyncPattern<WebResponse>(
request.BeginGetResponse, request.EndGetResponse);
Observable.Timeout(observableRequest.Invoke(), TimeSpan.FromSeconds(120)).
Subscribe(response => { HandleListResult(response); },
exception => { HandleListResultTimeOut(exception); });
我在 ViewModel 中有一个集合(列表),它与 LisBox 绑定,我想在每个响应返回后继续添加到集合中。
使用 Reactive Extensions 实现这一目标的最佳做法是什么?如果有人能给我一些示例代码,那就太好了!
提前致谢
【问题讨论】:
-
由于您将通过引发 PropertyChanged 的属性或 ObservableCollection 更新 UI,因此最好使用 ObserveOnDispatcher。
标签: silverlight system.reactive