fro*_*rol 12 domain-driven-design aggregateroot
我有两个聚合根和两个非聚合根实体:

我知道,这种关系D -> B打破了DDD原则.
我听说,在大多数情况下,解决方案是使引用的实体成为新的聚合根.
但是如果B是A 的真正孩子(B不能没有A),那么将B作为一个新的聚合根真的是一个选择吗?
我同意你的观点,有时将一个实体与其集合体分开是没有意义的,因为它如此自然地融入其中。这就是为什么我不完全相信某些人推荐的“小总量”方法的原因之一。
在这种情况下,您可以做的是通过遍历 A 的实例来获取对 B 的引用,而不是直接获取它。毕竟,如果没有 A 就无法存在 B,那么聚合之外的对象就没有理由知道特定的 B 而不知道其 A。