可编辑的GridView,用于存储viewstate中的更改,直到保存

Her*_*ill 5 asp.net viewstate gridview

我知道如何有一个可编辑的GridView以及一个SqlDataSource,其中每个编辑(更新/插入/删除)立即持久化到数据库(使用SqlDataSource的UpdateCommand,Insertcommand等).

我现在需要的是拥有一个可编辑的GridView,它维护视图状态中的所有编辑,直到用户按下窗体上的"保存"按钮.

换一种说法:

  1. 首次加载时,从DB数据填充GridView
  2. 用户对数据进行了各种编辑,这些编辑尚未持久保存到数据库,但通过任意数量的回发都可以存活.
  3. 用户按下保存,所有更改都保留在DB中

我假设我需要编写自定义代码来保存步骤3中的数据,但是第2步是否采用了直接的,开箱即用的方法?

mir*_*zus 2

您想要使用 DataSet 或 DataTable 并使用以下内容:

myDataSet.AcceptChanges();
Run Code Online (Sandbox Code Playgroud)

当您在 DataSet、DataTable 或 DataRow 上调用该方法时,这会提交更改。可以将其想象为需要提交或回滚的 SqlTransaction。希望这可以帮助!

请参阅链接:接受更改