【发布时间】:2010-07-11 01:24:45
【问题描述】:
随着时间的推移,我正在尝试改进观察者中的过滤器,我想知道他们这样做的最佳方法是什么。
例如myObservable.Where(x=>x.Color=="red").Subscribe();
然后myObservable.Where(x=>x.Color=="blue").Subscribe();
然后将两者合并为一个流,以便在 Red OR Blue observables 上调用 OnNext()。
也许它还没有完全了解我正在发生的事情。
如果我也有myObservable.Where(x=>x.Type=="Car").Subscribe();。每次都会继续调用相同的 OnNext() 方法吗?这对我有什么用.. 我可能想根据哪个订阅调用更新做出不同的反应,但同时我可能想扁平化订阅。
例如在上面的场景中,如果颜色是红色,我想写“新红色对象”,如果是汽车,我想写“新车”。我将如何在 Rx 中执行此操作? OnNext、OnError 等的订阅超载。但这要求观察者也是可观察的(主题)。如果我错了,请纠正我。
这对我来说毫无意义。为什么观察变化的东西也应该是可观察的?
【问题讨论】:
标签: .net system.reactive