关于DataSet Merge的问题,非常郁闷,各位救急阿!
sxbyl 2004-02-28 04:55:29 我从数据库中取出一个记录集,客户端进行修改,在所有数据全部修改完后才提交数据。数据的修改在几个界面中进行,每个界面都可以取消在当前界面中进行的修改。这样,就无法使用CancelEdit来取消修改,因为这样会导致所有以前修改过的数据全部被取消掉。因此我在每个修改界面开始的地方都把要修改的数据进行了一个Copy操作,修改是针对Copy出来的版本,修改确定后再和原数据Merge,但我发现这样做有问题。
假如用户在某个界面A中添加了几条记录,确定,这时新添加的几条记录正确的合并到了原数据集中,这是对的,但如果用户在此调用这个界面对这些新添加的数据进行修改,那么再次Merge的时候,这些新添加的数据的状态就会变为Modified状态,而不是正确的Added状态,这将导致DataAdapter提交数据的时候发生错误。Merge方法提供的那几个参数根本无法解决这个问题。
除了自己写一个新的Merge,还有什么别的解决方法?