情况:
要处理域事件,吉米·鲍格(Jimmy Bogart)proposed 一种用于将事件存储在聚合中的方法。
从我的角度来看,这是一种非常方便的方法。但是,在域服务中发生域事件的情况如何?
域服务不应具有状态(无状态)。从理论上讲,在这种情况下,必须将IDispatcher事件分发程序注入此类服务的构造函数中。
问题:
为避免引入事件调度程序的域服务,建议的替代方法是正确的:
答案 0 :(得分:1)
注意:该帖子大约写于五年前。您可能想要查看他的最新(和更详细):Life Beyond Distributed Transactions: An Apostate's Implementation
域名服务不应具有状态
正确-出于这个原因,您非常想为域服务中的域事件分配责任。
您可以使用域服务来为聚合计算事件,但是存储仍将属于聚合结构本身。因此,它看起来可能像一个函数(或者,如果愿意的话,是域服务上的方法),它接受聚合提供的一些参数并返回事件。