我正在尝试使用此代码从表中删除行。但是得到错误。
MyEntity _er = new MyEntity();
List<result> V_Result= R_Enrollment.GetResult(V_studentid, DR.Cells[0].Value.ToString() );
foreach(var lop in V_Result)
{
_er.results.Remove(lop);
}
_er.SaveChanges();
_er.Dispose();
在_er.results.Remove(lop)上收到以下错误;
ex = {"The object cannot be deleted because it was not found in the ObjectStateManager."}
答案 0 :(得分:2)
您的_er对象不知道您从其他函数调用中返回的项目。 您必须先附加对象,然后将其删除。
假设lop对象具有记录的主键,那么循环内部应该是什么:
_er.Attach(lop);
_er.results.Remove(lop);