2010-02-02 6 views
1

오늘의 더 좋은 부분을 낭비했고 오늘 아침보다 문제를 더 잘 이해하지 못했습니다.System.Data.Linq.ChangeConflictException : 행을 찾지 못했거나 변경했습니다.

개체 집합을 반복하고 삭제 표시합니다. 두 번째 것은 항상 위의 예외를 발생시킵니다. tb_invoice에는 tb_shipment에 FK가 있습니다.

언제나처럼, 나는 아주 명백한 것이 빠졌을 것입니다. 그러나이 코드에서 이미 아무것도 남기지 않았으므로이 예외를 아직도 얻고 있습니다. 이 인스턴스는 로컬 SQL 2008 인스턴스이며, Invoice를 읽고 SubmitChanges()를 호출하는 사이에는 아무 것도 변경되지 않습니다. 도움! SQL 서버에서 외부 키에 대한 삭제 작업을 설정

myDataContext db = new myDataContext(); 

IQueryable<invoiceDetail> pendingInvoices 
    = db.GetInvoiceDetailPending(); 

foreach (invoiceDetail id in pendingInvoices) { 
    tb_shipment s = db.GetShipmentById((Guid)id.shipment_id); 

    db.tb_invoices.DeleteOnSubmit(
      db.GetInvoiceById(s.tb_invoices.FirstOrDefault().id));  } 

    SubmitChanges(); // fails for the 2nd invoice 
} 
+0

중복 가능한 [System.Data.Linq.ChangeConflictException : 행을 찾을 수 없거나 변경됨] (http://stackoverflow.com/questions/805968/system-data-linq-changeconflictexception-row-not-found-or- 변경됨) –

답변

관련 문제