【发布时间】:2011-01-30 02:56:25
【问题描述】:
如果我想手动删除一个对象及其所有子对象, 我该怎么做(我不想使用级联删除)
当我尝试遍历子列表时 - 我得到一个异常,因为我正在更改 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();
【问题讨论】: