【发布时间】:2013-07-28 19:28:10
【问题描述】:
我找到了这个代码示例。
https://code.google.com/p/ddd-cqrs-sample/
看起来非常完整且组织良好。不是“框架”,只是一个具有非常精细和明确的做事方式的示例项目。但是,不完整。这带来了一些疑问。
他们擅长回答你的问题。在https://groups.google.com/forum/#!forum/ddd-cqrs-sample查看他们的谷歌群组
好的。问题是他们在 SALES BC 中有客户,在 CRM BC 中有客户/潜在客户。我想我们都同意指向同一个“人”。假设在销售漏斗中,此人一开始是潜在客户,然后通过购买使他成为客户的东西成为客户。
我的问题是,为什么他们对同一个“人”有三个不同的表示?它不能像“共享内核聚合”吗?我不知道这样的事情是否存在。在数据库 Client/Customer/Leads 中有三个表用于相同的“事物”,这让我有点困扰。另外,在示例中不清楚(未实施 CRM)您如何在 BC 之间进行通信。我阅读了他们的文档,但找不到任何有价值的线索。
这个过程是怎样的?假设您需要将此潜在客户/客户/客户添加一个地址来运送订单。你会选择哪一个?我猜是 Shipping BC 中的 ShippingAddress 吗?用 Id 指向?顾客?客户?您是否应该将地址直接添加到客户?以直邮为例,因为它与运费无关?
【问题讨论】:
标签: .net domain-driven-design cqrs bounded-contexts