我刚刚开始使用 DDD,在弄清楚如何适应数据的关系性质时遇到了一些麻烦。我有我认为会被认为是我的聚合根的东西,但聚合也有它自己的聚合。不想违反得墨忒耳法则,我想知道我是否在想这个错误,并希望一些 DDD 专家可以提供一些见解。
我的聚合根是我的Account对象,它具有众多AccountElement实体的聚合,这些实体本身就是各个ProductComponent实体的逻辑分组。
anAccountElement的上下文之外Account没有任何意义,因此我对我的结论感到满意,即该Account对象是我的聚合根,并且我预计该实体具有聚合Elements属性。ProductComponent让我困惑的是这个系列。这个聚合在 a 之外没有任何意义,在 a 之外AccountElement真的没有任何意义Account。
我认为我不应该ProductComponent通过点我的方式来访问单个对象,例如:
var reference = account.Elements(0).ProductComponents(0).ReferenceCode;
ProductComponent但与此同时,直接从Account实体访问 a 是没有意义的(从域的角度来看) 。
我敢肯定,如果不了解我的领域,这一切有点难以理解,但我希望这足以获得一些好的反馈。