我应该在什么时候使用事件处理程序而不是事件聚合器?
在我的代码中,我有两个由父 ViewModel 控制的 ViewModel,我想决定是否应该只使用事件处理程序在它们之间进行通信?或者使用事件聚合器?这将只是简单的方法调用,我不需要在它们之间传递参数。
最佳答案
在我看来,EventAggregator 通常是您想要将事件发布到整个应用程序时使用的重型枪,更具体地说 - 当您不这样做时不知道到底是谁在听。
在您的场景中,情况并非如此,您有 2 个 View 模型想要通信,但它们彼此认识。所以没有理由不能使用 events
。
我只想提一下,如果你想让它保持更松散的耦合 - 为每个公开事件的 View 模型创建一个接口(interface)。这样每个 VM 将使用其他 VM 的接口(interface)而不是特定实例。
关于c# - 我什么时候应该在事件聚合器上使用事件处理程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13565774/