【发布时间】:2013-09-16 15:31:53
【问题描述】:
我已经设置了一个使用 ORM 填充的域项目。域包含不同的聚合,每个聚合都有自己的根对象。 我的问题是应该如何处理跨越聚合边界的属性?
- 这些属性是否应该简单地忽略边界,以便有界上下文 A 中的域对象引用上下文 B 中的对象?
- 或者,是否应该没有从上下文 A 到 B 的直接链接,并且上下文 A 中的对象是否具有可用于通过 B 聚合根从 B 获取域对象的“int ContextBId”属性?
- 或者……
一个例子:
上下文 A = 用户
上下文 B = 游戏
在Users 上下文中有一个对象UserOwnedGames。此对象有一个属性User,它是对同一Users 上下文中的对象的引用。该对象还具有Game 的属性,该属性显然不在用户中,而是在Games 上下文中。
这种关系会(或应该?)如何?数据库中很清楚(即2个外键),但代码应该是什么样子?
【问题讨论】:
标签: domain-driven-design aggregateroot bounded-contexts