我得到了Foo
,Bar
和Baz
類型的IObservable
。此外,有一個定義爲一個方法:使用來自IObservable的最新值
void DoWork(Foo foo);
的IObservable
在別處定義爲Subject
和OnNext
被稱爲不時。
只要有新的數據可用(由某些Where查詢定義),我想調用DoWork
方法以及最新的Foo
值。如果沒有生成Foo
值,則不應調用該方法。
最簡單的方法是什麼?
更具體一些,請看下面的例子。我想打電話DoWork
時bar
或baz
變化,與最新的foo
(f.id == 1
):
void Wire(IObservable<Foo> foo, IObservable<Bar> bar, IObservable<Baz> baz)
{
foo.Where(f => f.Id == 1)
.Subscribe(f => DoWork(f));
}
而IObservable和流之間的關係/交互是... –
請參閱我的關於Subject和OnNext的編輯。沒什麼太花哨的 – kshahar
你的意思是你想在* * bar或baz'改變時調用'DoWork()'? – svick