我们有2个班,父母和孩子
父级没有对孩子的引用,孩子在其流畅的映射中定义了以下内容:
References(x => x.Parent, "Parent_id").Not.Nullable();
删除父记录时,会生成以下错误:
The DELETE statement conflicted with the REFERENCE constraint "FKFF68C21EE06905B9". The conflict occurred in database "DatabaseName", table "dbo.tblChild", column 'Parent_id'.
The statement has been terminated.
如果父模型没有类型为child的属性集合,那么启用父项删除的正确映射是什么?
答案 0 :(得分:1)
由于外键约束,您无法删除子记录引用的父记录。如果您不想将子项映射为集合引用,则必须在删除父记录之前删除对所有子记录中的父记录的引用。您可以通过将对父项的引用设置为null(删除非空约束)或删除子记录来完成此操作。
所有其他解决方案都包含父记录中的反向子集合,并带有级联映射。