0

Jimmy Nilsson 的 Applying DDD and Patterns book 中的一个例子: 订单聚合和产品实体

假设我想删除某个OrderLine引用的Product ,我的意思是从数据库中删除,为什么?可能是系统运行时间长,用户想清理一些旧产品,如何解决? 对于那些可能已经读过这本书的人来说,另一个问题是,为什么作者选择不像他为客户实体那样对产品进行快照?

4

1 回答 1

0

由于订单实际上是不可变事件,因此从数据库中删除产品不应影响该产品的现有订单。将适用的产品数据直接复制到订单行项目中通常是个好主意——这可能是 Jimmy 书中所说的“快照”,但我不确定。此外,如果您使用的是关系数据库并且对产品 ID 有外键约束,那么您应该避免删除产品或移除约束。

于 2013-04-18T23:43:16.490 回答