1             DataTable datainsert = dt.GetChanges(DataRowState.Added);
2             DataTable datadelete = dt.GetChanges(DataRowState.Deleted);
3             DataTable dataupdate = dt.GetChanges(DataRowState.Modified);
4             DataTable datadelete_origin = dt.Clone();

datatable的GetChange可以捕捉在DataGridView表格中的增添行,删除行和改变行等一系列操作,并且记录下来,便于与数据库之间的交互,其中删除行需要注意,删除行默认的是现在的状态,即空白,什么都没有,所以用Clone()得到一个保留结构框架的空白 表格去存储删除的数据,找回原有数据如下所示:

1 for (int i = 0; i < datadelete.Rows.Count; i++)
2                         {
3                             datadelete_origin.Rows.Add();
4                             datadelete_origin.Rows[i][0] = datadelete.Rows[i][0, DataRowVersion.Original];
5                             datadelete_origin.Rows[i][1] = datadelete.Rows[i][1, DataRowVersion.Original];
6                             datadelete_origin.Rows[i][2] = datadelete.Rows[i][2, DataRowVersion.Original];
7                             datadelete_origin.Rows[i][3] = datadelete.Rows[i][3, DataRowVersion.Original];
8                         }

这里的DataRowVersion.Original找回的就是之前被删除的数据。

相关文章:

  • 2021-07-04
  • 2021-08-27
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2021-06-17
  • 2021-12-30
  • 2022-12-23
  • 2022-02-07
  • 2021-07-16
  • 2022-02-14
  • 2021-12-14
相关资源
相似解决方案