我的数据库上下文中有3个实体:人物,商店和地址。所有实体都有一个Id属性,即PK。
人们有1:M的地址。人员实体有一个虚拟列表。 商店的地址为1:M。商店实体有一个虚拟列表。
地址表将保存人员和商店的地址。
当我保留人员图表时,图表中的所有地址都应该与人员实体保持一致。
当我持有商店图表时,商店图表中的所有地址都应该与商店实体保持一致。
当我删除商店时,我希望EF删除与之关联的所有地址。 当我删除人员实体时,我希望EF删除与之关联的所有地址。
如何使用Fluent API设置这些关系?
谢谢!
答案 0 :(得分:0)
我想我已经明白了。
在Store和People的映射器中,我设置了与级联删除的可选关系:
this.HasMany(x => x.Addresses)
.WithOptional()
.WillCascadeOnDelete(true);
这似乎有效,包括级联删除。