首页 > 解决方案 > 模块之间的通信 - MediatR 或 Interface/Fasade?

问题描述

我参与了完全模块化的单片应用程序项目。我们像 Jimmy 在本文中描述的那样使用 MediatR:处理 MediatR 处理程序中的重复。正是这个:

我希望 MediatR 作为应用程序中实际特定领域行为的最外层窗口

但是内部沟通呢?

我们对模块之间的通信有一些疑问。我们使用事件和查询(在单体应用程序中它有时是有用且不可避免的)。特别是我们有查询问题。如果一个模块必须查询另一个模块,那么我们的处理程序(再次)使用IMediator(再次)执行来自其他模块的查询。它看起来很奇怪,打破了我们的方法。

吉米提到Excluding sub-handlers or delegating handlers, where should my logic go?但我们不知道那个处理程序是什么。

也许我们应该为此使用简单的接口(又名公共外观)?

它会更干净,一切都会被明确定义吗?

标签: asp.net-corearchitecturemodularitymediatrmonolithic

解决方案


推荐阅读