JD.*_*JD. 6 domain-driven-design
我有两个聚合根引用另一个聚合根(首先通过第二个聚合根的标识引用第二个).
来自我的应用程序层的命令(通过MVC asp.net)现在删除我的第二个聚合根.
在删除根目录时,是否发送一个域事件,告诉第一个聚合根目录"NULL"对第二个聚合的引用现在不存在?
JD
你是以错误的方式去做的.退出您面临的技术问题.首先,我怀疑在你无处不在的语言中存在"删除"这样的事情.很可能人们会将其称为"存档","无序","删除","缺货",......某些术语表示特定聚合处于其生命周期的末尾.当域名专家谈到这些事情时,这应该是你向他们提出一个问题的触发器:"如果你停止使用产品,那将如何影响该特定产品的促销?".要与问题相关联:促销是包含对产品聚合的引用的聚合.所以它非常成为一个商业问题而不是技术问题.大多数情况下,商业人士已经制定了一个流程来防止此技术问题的发生(例如,您无法停止在促销中使用的产品).我希望现在很清楚,给你一个通用答案不是一个选择.