2014-04-17 9 views
1

이 코드를 사용하여 테이블에서 행을 삭제하려고합니다. 그러나 오류가 발생했습니다.ObjectStateManager에서 찾을 수 없기 때문에 개체를 삭제할 수 없습니다. C#

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."} 

답변

2

_er 개체는 다른 함수 호출에서 가져온 항목을 알지 못합니다. 먼저 개체를 첨부하고 삭제해야합니다. 나는 또한 개체가 이미 위의 작업을 수행하기 전에 연결되어 있지 않은지 확인하기 위해 검사를 추천 할 것입니다

_er.Attach(lop); 
_er.results.Remove(lop); 
+1

:

여기에 무엇을 베다 개체를 가정 루프 내부해야하는 레코드의 기본 키가 있습니다. – CodeMilian

+0

감사합니다. 당신의 대답이 먼저 나와 내 문제를 해결했습니다 :) –

관련 문제