如果我想手动删除一个对象及其所有子对象, 我怎么能(我不想使用级联删除)
当我试图遍历子列表时 - 我得到一个例外,因为我正在更改foreach中的集合 - 这是一个问题......还有其他方法吗? (我每次都要设置状态删除)。
var myAssignemnt = (from s in context.Assignments.Include("ActivityInAssignments").Where(s => s.AssignmentID == AssignmentID) select s).FirstOrDefault();
foreach (ActivityInAssignment acc in myAssignemnt.ActivityInAssignments)
{
context.ObjectStateManager.ChangeObjectState(acc, System.Data.EntityState.Deleted);
}
context.ObjectStateManager.ChangeObjectState(myAssignemnt, System.Data.EntityState.Deleted);
context.SaveChanges();
答案 0 :(得分:2)
也许试试... in myAssignemnt.ActivityInAssignments.ToList()