我是实体框架的新手,所以我需要从实体中删除对象的帮助。我有2个具有多对多关系的表和一个将它们连接到数据库中的关联表。在该模型中,只有两个表,其中一个表由导航属性表示,因为这就是EF的工作方式。现在,我需要从第一个表中删除一个对象,context.EntityName.DeleteObject(object)
但是当我尝试这样做时,代码将失败,并显示错误“ DELETE语句与REFERENCE约束FK ..冲突”,这是从关联表到实体的外键,我尝试删除哪个对象。我想知道如何解决这个问题。请你帮助我好吗?
表格如下所示:
和关联表:
这是我尝试删除它的方法:
TimetablesEntities context = new TimetablesEntities();
TimetableDetail detail = context.TimetableDetails.SingleOrDefault(td => td.TimetableDetail_ID == timetableDetailId);
context.TimetableDetails.DeleteObject(detail);
context.SaveChanges();
提前致谢!
您只需要清除Teachers
特定表的关联表即可清除关联表TimetableDetail
。使用您的代码...
TimetablesEntities context = new TimetablesEntities();
TimetableDetail detail = context.TimetableDetails.SingleOrDefault(td => td.TimetableDetail_ID == timetableDetailId);
detail.Teachers.Clear();
context.TimetableDetails.DeleteObject(detail);
context.SaveChanges();
关键是 detail.Teachers.Clear()
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句