【发布时间】:2013-09-10 18:26:37
【问题描述】:
我有一个方法可以创建一个 observable,它是多个其他 observable 的合并。每个人订阅一个特定的符号来获取它的数据:
var obs1 = dataSource
.CreateObservable(someClass.Symbol1)
.Select(result => ProcessData(result));
var obs2 = dataSource
.CreateObservable(someClass.Symbol2)
.Select(result => ProcessData(result));
var obs3 = dataSource
.CreateObservable(someClass.Symbol3)
.Select(result => ProcessData(result));
return Observable.Merge(obs1,obs2,obs3);
我订阅了合并的 observable,一切正常。现在,当任何符号发生变化时(someClass.Symbol 1/2/3),我希望重新创建可观察对象以使用新符号。当符号发生变化时,我会收到通知。
有没有办法使用 RX 让 observable 自动重新创建自己?也许使用 TakeUntil("symbol changed") 之类的东西然后做点什么?
不确定这是否可行,尤其是在使用合并的 observable 时。
【问题讨论】:
标签: c# system.reactive