2016-06-30 11 views
0

데이터 집합에서 일부 수정 된 값으로 데이터베이스를 업데이트하려고하면 데이터베이스의 일부 값을 수동으로 변경하면 동시 예외가 발생하지 않습니다 데이터 세트의 채우기 메소드가 수행 된 후 (행을 수동으로 삭제 한 다음 데이터 어댑터의 메서드 업데이트를 호출하면 예외가 발생합니다.)데이터 집합을 채우기 전에 데이터베이스 행 값이 변경되었는지 확인하는 방법

데이터 세트에 "더티 읽기"가 있는지 어떻게 확인해야합니까?

+0

코드를 게시하십시오. –

+0

http://pastebin.com/wPXuhzVy 이것은 비슷한 기능입니다 ... 행의 원래 값이 데이터베이스의 현재 값과 다른 경우 업데이트하기 전에 어떻게 확인해야합니까 ("더티 읽기"). 나는 단지 동의 예외를 얻을 것이라고 생각했지만 내 가정이 잘못되었다고 생각합니다. – user3097132

+0

내 대답보기. 희망이 도움이됩니다. –

답변

0

몇 가지 옵션이 있습니다. 에 대해 비교하고 를 만들기 위해 원래의 엔티티 집합의 복사본을 유지

  • 당신이 그것을 더러운 의 여부를 알 필요가있는 시점에서 더러운 결정이다.

  • 데이터 로우의 rowstate 특성을 확인하고 수정 된 경우 과 현재 및 원래 DataRowVersions의 값을 비교하십시오. 두 번째 값을 변경하면 원본과 동일한 값이되고 RejectChanges를 호출 할 수 있지만 행의 모든 ​​변경 사항은 거부됩니다. 은 행당 또는 테이블 당 만 유지하기 때문에 각 필드를 수동으로 추적해야합니다.