相关疑难解决方法(0)

订阅后添加可观察序列

我们正在使用Rx来监控Silverlight应用程序中的活动,以便我们可以在一段时间不活动后向用户显示消息.

我们将事件(鼠标移动等)转换为可观察对象,然后将可观察对象合并在一起以创建单个(allActivity)可观察对象.然后,我们使用timepan限制allActivity observable,并且当系统在一段时间内处于非活动状态时,会预订某些通知.

如何在订阅之后向此添加新的observable/sequence(以便订阅选择此选项而不取消订阅和重新订阅).

例如,将几个序列合并在一起,节流,订阅.现在为已订阅的observable添加一个额外的序列.

示例代码:

private IObservable<DateTime> allActivity;
public void CreateActivityObservables(UIElement uiElement)
{
    // Create IObservables of event types we are interested in and project them as DateTimes
    // These are our observables sequences that can push data to subscribers/ observers 
    // NB: These are like IQueryables in the sense that they do not iterate over the sequence just provide an IObservable type
    var mouseMoveActivity = Observable.FromEventPattern<MouseEventHandler, MouseEventArgs>(h => uiElement.MouseMove += h, h => uiElement.MouseMove -= h)
                                      .Select(o => …
Run Code Online (Sandbox Code Playgroud)

.net c# system.reactive

7
推荐指数
2
解决办法
2806
查看次数

标签 统计

.net ×1

c# ×1

system.reactive ×1