我在M:N关系中拥有AEntity和BEntity。
在我的dababase中 一张桌子, BTABLE, ABRelationTable。
ABRelationTable构建如下
Id Guid
ATableId Guid
BTableId Guid
AdditionalAttribute1 String
AdditionalAttribute2 String
然后我删除了EntityFramework中的AEntityInstance和
它抛出一个异常,然后它违反了ABRelationTable中的FK
如下:
The DELETE statement conflicted with the REFERENCE constraint "FK_AB_A".
The conflict occurred in database "X", table "ABRelationTable", column
'Id'.The statement has been terminated.
如何删除关系表中的相应行
答案 0 :(得分:1)
您必须从B
A
foreach(var b in a.Bs.ToList())
{
a.Bs.Remove(b);
}
或加载a.Bs
和Clear()
。
关键是必须首先加载B
,然后以某种方式删除,以便变更经理知道关联被切断。
答案 1 :(得分:1)
关系是否在SQL数据库表中删除级联?如果是这样,你可以在EF中这样做,它将被处理。 看到... Entity framework - remove related records by id