使用Rx与Prism的EventAggregator一起使用或建议使用方法?

时间:2013-01-23 17:36:01

标签: c# .net prism system.reactive eventaggregator

我觉得Prism的EventAggregator和Rx框架之间存在一些重叠和冲突,因为它们都是关于订阅事件流的。 Rx显然提供了更精细的控制,而EventAggregator提供了一个松散耦合的应用程序范围的pub-sub基础结构。

所以我的问题是,我们如何在同一个应用程序中有效地同时使用这两种技术?我是否混淆了他们的角色,或者我错过了某个区别?有没有人有过这方面的经验?

2 个答案:

答案 0 :(得分:2)

这是与EventAggregator相同概念的Rx友好版本:

https://github.com/reactiveui/ReactiveUI/blob/master/ReactiveUI/MessageBus.cs

  

我是否混淆了他们的角色,或者我错过了某个地方?

Message Bus类型的东西只是你可以在应用程序中使用Rx的很多方法之一,我写的名为ReactiveUI的MVVM框架有更多的想法。

答案 1 :(得分:1)

这是指向EventAggregator的基于Rx的实现的链接;就像ReactiveUI中的@ paul-betts版本一样,它不是“替代”替代品,但也像他一样,很容易包装。

José F. Romaniello - Event Aggregator with Reactive Extensions