0

我们在当前项目中使用DDD实践。我们的问题是我们有很多有界的上下文,每个上下文都是一个包含它的持久层的分层结构。问题是,例如在有限情况下,我们需要从例如其他界上下文参考数据IdentityAccess上下文是负责管理用户这样的背景下,它包含的usermodel,但我们需要引用用户在另一个有界的上下文中,我们创建一个SubscriberUserModel,其中包含来自该有界上下文中的用户模型的子集信息。 我们有一个迁移项目,其中包含所有用于管理迁移和我们的数据库的有界上下文中的所有模型,但我们遇到了一个问题。我们不能有一个是指同一个表 我的问题是如何在一个巧妙的方法 此处理这个问题更是一个实体的EF异常当我们试图产生新的迁移具有多个有界上下文的DDD实体框架集成问题

enter image description here

回答

3

答案是不要

从DDD的角度来看,你做错了。有界的上下文不应该像你的情况那样与关系绑定,而是独立的表与另一个上下文中的表无关。

您应该做的是在上下文A中创建一个具有必要属性的上下文A中的用户。上下文A中有关用户的信息应该从上下文B中通过事件,队列,Web服务,a某种类型的触发器等,但它们不应该与关系有界。

这样,您可能会从上下文B中复制与上下文A中的实体和业务流程无关的不必要数据。尽管它们具有相同的名称(用户),但它们在上下文中的角色和逻辑完全不同。别让那个骗你!

关于这个问题的好视频是Julie Lerman on Pluralsight(不是广告:))。

相关问题