행을 수정, 삽입 및 삭제 한 데이터 세트가 있습니다. 데이터 집합을 내 MiddleTier로 보내면 데이터베이스를 업데이트하는 서버로 데이터를 보냅니다. GetChanges를 사용하여 최대한 적은 수의 행을 전송합니다.업데이트 후 안정 데이터 세트 얻기
서버가 행을 올바르게 업데이트하고 삽입하고 삭제하며 업데이트 된 데이터 세트를 다시 전송 한 다음 로컬 데이터 세트와 병합합니다. 문제는 기본 키가 일치하지 않으면 중복 된 추가/수정 된 행을 얻게된다는 것입니다. 그래서 RejectChanges를 병합 한 후에 왼쪽의 모든 변경 사항을 제거하려고합니다 (중복 될 수 있음). 그런 다음 문제는 삭제 된 모든 행이 여전히 데이터 집합에 남아 있다는 것입니다. 병합은 삭제 된 행을 제거하지 않으므로이를 수행하려면 AcceptChanges를 호출해야합니다. 따라서 Accept와 RejectChanges를 모두 수행해야하지만 불가능합니다.
이렇게하는 좋은 방법이 있습니까? 이 문제를 가능한 한 최선의 방법으로 해결할 수있는 방법에 대한 제안이 있으십니까?
감사합니다.
문제는 내가 어떤 병합에 대해 AcceptChanges를한다면, 나는 내 로컬 데이터 세트 (데이터베이스에 할당 된 키와 물건)에서 업데이트 된 데이터를 얻을 수 없다는 것입니다. –