【发布时间】:2015-03-07 20:11:41
【问题描述】:
我的 ICustomerService 中有以下服务操作:
public void RegisterCustomer(Customer customer)
{
Check.NotNull(customer, "customer");
//do another domain specific things...
customerRepository.Save(customer);
}
编辑
Customer 类具有对 CustomerAddress 实体的 ICollection 的引用。
此操作还需要保存客户地址列表。
我知道在这种情况下进行级联更新并不是一件好事:
How should I handle persistence for referenced entities?
从 DDD 的角度来看,在这种情况下我应该怎么做?
我应该通过参数向服务操作询问客户地址列表吗?
【问题讨论】:
-
CustomerPhone很有可能是一个值对象而不是一个实体。CustomerPhone真的有自己的身份和状态吗?如果您有两个具有相同编号的CustomerPhone实例,它们不是相等且可互换的吗?如果是这种情况,那么它们应该是值对象,而不是实体。 -
@plalx,我已经编辑了我的问题。假设在这种情况下 Customer Address 不是 values 对象。我应该如何处理“SaveComplete”操作?我应该只通过参数获取实体并使用它们的引用还是获取将保存的所有相关实体?
标签: c# entity-framework repository domain-driven-design