我了解聚合根的概念,并且我知道一个聚合根必须通过身份引用另一个(http://dddcommunity.org/wp-content/uploads/files/pdf_articles/Vernon_2011_2.pdf)所以我不明白的是如何强制实体框架在两个聚合之间添加外键约束?
假设我有一个简化的域:
public class AggregateOne{
[Key]
public Guid AggregateOneID{ get; private set;}
public Guid AggregateTwoFK{get; private set;}
/*Other Properties and methods*/
}
public class AggregateTwo{
[Key]
public Guid AggregateTwoID{get; private set;}
/*Other Properties and methods*/
}
通过这种域设计,Entity Framework 不知道 AggregateOne 和 AggregateTwo 之间存在关系,因此生成的数据库中没有外键。