0

我试图向 MessageBus 注册一个 observable,它重播发生新订阅时产生的最后一个值

var currentViewObs = currentViewGallery.ObservableForProperty(g => g.SelectedIndex)
                .Value().Select(CurrentViewObsSelector).Replay(1);

currentViewObs.Connect();

MessageBus.Current.RegisterMessageSource(currentViewObs, MessageBusContracts.CurrentView);

这是行不通的,因为 observable 被包裹在一个 ScheduledSubject 中,它吞下了重播。还有另一种方法吗?

4

1 回答 1

1

在这种情况下,您可能想要使用自己的 MessageBus - 实现(可能只需从此处IMessageBus复制粘贴代码并对其进行编辑),然后将其分配给MessageBus.Current

于 2013-02-03T00:15:14.453 回答