我有一个模块化的应用程序。每个模块都是解决方案中的单独项目,模块不能相互引用。我想添加一个系统,其中模块可以订阅来自其他模块的事件。
例如说我有一个Blogs模块和一个Menus模块。当我删除博客模块中的帖子时,我还想删除菜单模块中的相应菜单项。
如果你能提供帮助,我会很感激的。如果您需要更多信息,请告诉我,因为我很乐意提供。感谢
答案 0 :(得分:3)
让您的模块将其事件发布到某种全局事件队列。该队列中的事件消息应该有一些标记,指示发起事件的模块。
任何对另一个模块的事件感兴趣的模块都可以订阅全球事件发布者,从那里接收
答案 1 :(得分:3)
我建议您使用Prism的EventAggreator,它完全适合您的场景。