与MVVM Light Messenger服务相比,有人可以给我有关Prism EventAggregator的很好的概述吗?特别;
它们是相似的事物还是出于完全不同的目的?
两者的利弊
在不应该使用它们的地方
用于模块化开发,例如与MEF或Unity结合使用时
您认为相关的其他信息
这是我未曾解决过的很多事情,当我发现自己应该使用一个或另一个时,我发现自己仍在同一项目中同时使用这两个。
最佳答案
EventAggregator和Messenger相似。它们都用于分离组合应用程序中使用的不同组件之间的通信。在大多数情况下,它们都提供相似的功能。
Messenger可以选择使用密钥向所有订户或目标订户广播。我不确定EventAggregator中是否存在这样的功能。
就优缺点而言,MVVMLight非常轻巧。 Prism带有其他相关的dll。如果您不想使用Prism的所有功能,则可以使用EventAggregator。
尽管我没有在MEF或Unity中使用这些框架中的任何一个,但是由于它们是lke实用程序/ helpers / addins或您所说的任何东西,它们应该可以工作。