一個ForkJoin的結果:彙總鑑於這一段代碼中的Rx
var loadAll =
Observable.ForkJoin(
service1.FindBooksAsObservable().Select(s => s),
service2.FindBooksAsObservable().Select(s => s),
service3.FindBooksAsObservable().Select(s => s)
);
loadAll.Subscribe(
result =>
{
var aggregatedListOfBooks = result.SelectMany(b => b);
});
正如可以看到的,問題是每個FindBooksAsObservable()方法中返回一個IObservable<IEnumerable<Book>>
,因此結果可變訂閱()是一個數組IEnumerable<Book>
。
有沒有其他的方法來彙總的結果ForkJoin()?我希望能使用像Merge()以及ForkJoin。
沒有,居然要我想是從所有服務中得到的所有書籍在一個單一的列表。 – 2010-12-11 12:25:49