【发布时间】:2012-07-03 01:27:09
【问题描述】:
我们最近开始使用 DDD 和 CQRS(无事件溯源)的概念开发应用程序。我仍然有些困惑,究竟在哪里调用存储库来保存我的聚合根。
我是在命令处理程序中执行还是在事件处理程序中执行?
【问题讨论】:
我们最近开始使用 DDD 和 CQRS(无事件溯源)的概念开发应用程序。我仍然有些困惑,究竟在哪里调用存储库来保存我的聚合根。
我是在命令处理程序中执行还是在事件处理程序中执行?
【问题讨论】:
您在命令处理程序中执行此操作。您可以正常保存域对象。即使您没有使用事件溯源作为持久化域实体的一种方式,您仍然需要触发查询服务将订阅的事件。然后,读取端的事件处理程序将更新为 UI 屏幕定制的非规范化表。所以基本上你有两组数据访问代码:一组用于域,一组用于查询服务(读取端)。如果您使用事件溯源来持久化您的域实体,它的工作量就会减少...
【讨论】: