找到聚合根用法作为事实上,实体甚至值对象可能包含总根引用。 另外是根据定义,总结罗茨站在自己,在本质上有一个库,我不是在最后可以删除聚合根。跨域
作为我的GUI /工作流程的一个要求,客户希望看到特定聚集根被引用的位置,这不仅仅是因为他想要/应该能够检查他是否能够“安全地”删除该AR。
我目前的设计只有导航从实体朝另一个AggregateRoot,所以目前没有简单的方法来找到相反的方向。
由于这肯定不是一个单一的案例,我想知道这通常是如何完成的?
附录:
考虑下面的例子;我们有一个Address
作为实体,以及含有date
和Address address
一个值对象HomeVisit
(只是为了简单)。 到目前为止,没有建模需要能够从Address
导航到HomeVisit
,甚至更多,因为通常不鼓励双向关联。 但现在你应该看到用例了:出于某种原因,我可能需要能够在删除或修改之前找出当前使用的Address
的位置(也许服务技术人员正在前往该地址的路上,而我需要意识到这一点)。
你可以争辩说,对于这些情况必须有一个服务或类似地发现了,但是想象一下,有哪所带来的HomeVisit
VO和利用了Address
莫名其妙匿名的第三方模块;至少这是我希望它实现的方式。