实施以下内容的最佳做法是什么:
Order
和
OrderItem
作为亲子。 OrderItem
提供了属性Cost
MaxCost
column = max(cost)
来自Items
collection 我发现这里只有一个有用的解决方案,它不会破坏DDD概念:向类MaxCost
添加常用属性Order
,并在每次项目列表更新时更新它。
还有其他办法吗?
答案 0 :(得分:1)
可能,但你必须问自己“为什么?”。从域名的角度来看,如果你反复重新计算,它是否“关心”?或者您是否让程序员域进入您的问题域?
另一件事 - 考虑将“物品的最大成本”作为OrderItems集合的一部分,并隐藏你如何从系统的其余部分获取它。