C#WPF IChangeTracking IRevertibleChangeTracking实现

C#WPF IChangeTracking IRevertibleChangeTracking实现,c#,wpf,change-tracking,C#,Wpf,Change Tracking,我有一个WPF页面,其中有一个Datagridview和 单选按钮列(请求、建议、确认、取消) 还有一个搜索按钮, 单击后,它将在Datagridview中显示以下数据 大约5排。 在实时环境中,它可能超过1000条记录或1500条记录 Index Last Name First Name Requested Proposed Confirmed Cancelled ---------------------------- --------- -------- --------- ---

我有一个WPF页面,其中有一个Datagridview和 单选按钮列(请求、建议、确认、取消) 还有一个搜索按钮, 单击后,它将在Datagridview中显示以下数据 大约5排。 在实时环境中,它可能超过1000条记录或1500条记录

Index Last Name First Name Requested Proposed Confirmed Cancelled ---------------------------- --------- -------- --------- --------- 1 B2 R2 0 0 1 0 2 d d 0 0 1 0 3 d d 0 0 1 0 4 d d 0 0 1 0 5 SG0019 SG0019 0 0 0 0 索引姓氏请求的名字建议确认取消 ---------------------------- --------- -------- --------- --------- 1 B2 R2 0 1 0 二维d 0 0 1 0 三维d 0 0 1 0 4dD0010 5 SG0019 SG0019 0 0 0 0 现在案例1: 我只想修改这5行中的行 与第一条记录相同,用户更改状态如下 然后点击保存按钮,我应该只发送一条记录或 与索引1或更改记录相关的数据

Index Last Name First Name Requested Proposed Confirmed Cancelled ---------------------------- --------- -------- --------- --------- 1 B2 R2 0 0 0 1 索引姓氏请求的名字建议确认取消 ---------------------------- --------- -------- --------- --------- 1 B2 R2 0 0 1 现在案例2:

如果用户只修改两行,如下所示

Original Data Index Last Name First Name Requested Proposed Confirmed Cancelled ---------------------------- --------- -------- --------- --------- 1 B2 R2 0 0 1 0 2 d d 0 0 1 0 3 d d 0 0 1 0 4 d d 0 0 1 0 5 SG0019 SG0019 0 0 0 0 Modififed Data Step 1 Index Last Name First Name Requested Proposed Confirmed Cancelled ---------------------------- --------- -------- --------- --------- 1 B2 R2 0 0 0 1-------- Changed Status 2 d d 0 0 0 1-------- Changed Status Step 2 Index Last Name First Name Requested Proposed Confirmed Cancelled ---------------------------- --------- -------- --------- --------- 1 B2 R2 0 0 1 0-------- Back to Original 2 d d 0 0 0 1-------- Changed Status 原始数据 索引姓氏请求的名字建议确认取消 ---------------------------- --------- -------- --------- --------- 1 B2 R2 0 1 0 二维d 0 0 1 0 三维d 0 0 1 0 4dD0010 5 SG0019 SG0019 0 0 0 0 修改数据 第一步 索引姓氏请求的名字建议确认取消 ---------------------------- --------- -------- --------- --------- 1 B2 R2 0 0 1--------已更改状态 2D d 0 0 1------已更改状态 步骤2 索引姓氏请求的名字建议确认取消 ---------------------------- --------- -------- --------- --------- 1 B2 R2 0 0 1 0------返回原始版本 2D d 0 0 1------已更改状态 所以我只想要第二条被修改的记录,即使第一条记录被修改了 已修改,但已恢复到其原始状态或值 那么我怎样才能做到这两件事呢 使用IChangeTracking或irevertiblechangetracking