在CQRS模式中,应该在域服务或命令处理程序中运行

用户名

域服务是否应该注入其他域服务并在彼此之间工作,并使命令处理程序变得愚蠢。还是,域服务应该是愚蠢的(仅用于连接存储库屏障),而大部分工作是在命令处理程序中完成的?什么是最佳做法...

斯文特维特

我想说的是,将所有业务逻辑添加到域对象内(如果功能不适合对象,还可以添加域服务),并对以下内容使用命令处理程序:

  • 实例化域对象并在其上运行方法,
  • 在域服务上运行方法,
  • 提供对域对象的依赖关系,
  • 管理数据库交易,
  • ...

您可以检查一下洋葱体系结构,我想您的域服务在域模型中,而命令处理程序在应用程序服务中。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

我应该在End_Request事件处理程序中处理给定的ApplicationDbContext吗?

我应该在装饰器模式中引发异常以处理验证吗?

setBackgroundColor 在 google 应用程序脚本中运行后批处理工作,而它应该在运行时工作

我应该在应用程序层服务中测试什么

聚合可以使用聚合查找服务,还是业务逻辑应该在域服务中?

ZSH:找不到命令但应该在 PATH 中?

服务类应该在Java中是单例吗?

应该在服务层中编写哪些方法?

componentDidMount是否应该在酶中以浅层渲染运行?

应该在事务中运行ANALYZE吗?

我应该在控制器和域服务之间放置命令总线吗?

我应该在Linux的哪个目录中安装程序?

在 CQRS 模式中的命令处理程序中查询数据库

您是否应该在一个微服务中的单独线程中运行多个 Kafka 侦听器?

我们应该在React Functional Components中的每个函数处理程序中使用useCallback吗

如何在C#中以CQRS模式对命令处理程序进行单元测试

我应该在ASP.NET MVC应用程序中的哪里放置外部服务调用?

您应该在React中隐藏模式或将其从DOM中删除吗?

我应该在香草Django中处理Ajax请求还是在Django其余部分处理?

是否应该在域层或应用层检查聚合根中的重复值?

我应该在域类中实现equals和hashCode吗?

如果没有公司,我应该在Android Studio中为“公司域”添加什么?

ocaml说应该在camllight中运行的表达式中存在语法错误

在CQRS中为命令使用多个处理程序是否可以?

是否应该在nuxt.js服务器目录中构建应用程序的服务器端?

我是否应该在BoxStarter脚本中包含重新启动命令?

Presenter是否应该在Android MVP设计架构中处理View的所有事件?

OOP:应该在类或前端中处理有效数据吗?

我应该在动作创建者中处理错误吗