많은 새 객체 (행)와 그 사이의 관계를 삽입하는 앱을 만들고 있습니다. 하지만 어떤 시점에서 오류가 발생하면 DataContext에 대한 모든 변경 사항을 무시하고 "버려두어야"합니다. 그래서 오류가 나는 데이터베이스의 상태와 일치하는 DataContext의 깨끗한 복사본이 있습니다.datacontext를 마지막 submitchanges 지점으로 롤백하는 방법
2
A
답변
1
편집
또는, DataContext.Transaction의 사용을하고, .Commit()
또는 .Rollback()
변경에 그것을 사용할 수 있습니다.
ORIG
단지의 DataContext가 &를 다시 인스턴스화 것을 던져.
뭔가 같은 ...
public void MyMethod(string connStr)
{
try
{
DataClasses1DataContext dc = new DataClasses1DataContext(connStr);
for (int i = 0; i < 100; i++)
{
try
{
//Do Stuff
//Insert Objects
dc.SubmitChanges();
}
catch (Exception ex) //So if it bombs in the loop, log your exception
{
Log(ex);
}
finally //Reinstantiate your DC
{
dc = new DataClasses1DataContext(connStr);
}
}
}
catch (Exception bigEx)
{
Log(bigEx);
}
}
1
은 또한 사용하여 문에서 TransactionScope에 사용할 수 있습니다. TransactionScope에서 .Complete()를 호출하지 않으면 모든 변경 사항이 삭제 될 때 롤백됩니다 (using 문을 종료 할 때 발생).
관련 문제
- 1. cruisecontrol을 사용하여 마지막 빌드로 롤백하는 방법은 무엇입니까?
- 2. vb.net에서 데이터를 롤백하는 방법
- 3. DataContext를 이동하는 방법
- 4. 여러 SubmitChanges
- 5. 여러 DataContext를 사용하는 효과적인 방법
- 6. 이전 커밋에서 파일에서 변경 사항을 롤백하는 방법
- 7. 두 커밋을 롤백하는 방법은 무엇입니까?
- 8. 체리 하나에서 다른 지점으로 선택하는 방법
- 9. Asp.Net에서 사용자를 다시 시작 지점으로 리디렉션하는 방법
- 10. 모든 수정 사항을 지점으로 이동하는 방법
- 11. Linq2SQL : 트랜잭션이 적용된 SubmitChanges?
- 12. linq submitchanges 메모리가 부족합니다.
- 13. DataContext LINQ의 SubmitChanges
- 14. LINQ 컨텍스트 SubmitChanges
- 15. 업데이트 SubmitChanges() - 업데이트하지 않습니다.
- 16. SubmitChanges()가 작동하지 않습니다.
- 17. 개체를 지점으로 이동
- 18. Silverlight에서 자식 컨트롤의 datacontext를 설정하는 방법
- 19. StaticResource를 사용하여 XAML에서 DataContext를 정의하는 방법
- 20. DataGrid에 DataContext를 설정하는 방법 열 머리글
- 21. ItemsSource를 "프록시"컬렉션에 바인딩합니다. DataContext를 얻는 방법?
- 22. DataContext를 삭제하지 않고 System.Data.Linq.DuplicateKeyException에서 복구하는 방법?
- 23. WPF : 사용할 DataContext를 DataLayer에 알리는 방법?
- 24. 단추의 DataContext를 부모 부모 DataContext로 변경하는 방법?
- 25. TortoiseGit : 새로운 원격 지점으로 푸시
- 26. DataContext를 사용한 데이터 바인딩
- 27. DataContext를 생성해야하는 계층은 무엇입니까?
- 28. DataContext를 사용하는 UserControl의 DependencyProperty
- 29. DataContext를 사용한 많은 작업
- 30. C#을/WPF는 : DataContext를