0

这些是我的实体和关系:

在此处输入图像描述

没有实体 A,任何实体都不能存在。当 A 被删除时,所有其他实体也将被删除。因此 A 是我的总根。

但我不确定是否

1.) B is also an aggregate root for entity C,D and E 
2.) E is also an aggregate root for entity F

1.) C,D and E can not exist without B being created
2.) F can not exist without E being created

我现在有 3 个聚合根并因此创建 3 个存储库吗?

4

1 回答 1

2

如果没有关于您的域的更多信息,就不可能就聚合边界提出建议。实体之间的关系不如与实体相关的行为相关。实体之间的关系不会自动转换为对象引用;关系也可以实现为存储库。

聚合是一致性边界。换句话说,它聚合了在执行相关行为时必须保持一致的状态。在您的情况下,很可能这些实体中的每一个都是一个集合。查看有效的聚合设计,以更好地了解将域分解为聚合。

于 2013-04-28T16:10:11.130 回答