怎样实现撤消已经从Dataset中删除的数据?????????????

courage1 2006-05-14 01:55:09
datagrid 绑定 dataset 用delete()删除一条记录 ,我想撤消删除,而不保存该删除

问题:

但用绑定类的CancelCurrentEdit()好象只能撤消修改,添加的记录
而不能撤消删除的记录,这是怎么回事, 有什么方法可以撤消删除啊???
谢谢指教!!!!!!!!!!!!!!
...全文
155 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
xrwang 2006-05-14
  • 打赏
  • 举报
回复
在MSDN中有DataRow.Delete方法的说明:

如果行的 RowState 是“Added”,则该行将从表中移除。
在使用 Delete 方法后,RowState 变成“Deleted”。在您调用 AcceptChanges 之前,它一直保持“已删除”。
可通过调用 RejectChanges 取消删除行。

你可以通过类似下面的方法来撤消(恢复)所有被删除的行:
foreach(DataRow dr in dataTable1)
{
if(dr.RowState==DataRowState.Deleted) //这里检查当前行是否已经被删除,如果是,撤消删除操作
dr.RejectChanges();
}
  • 打赏
  • 举报
回复
要恢复数据,直接update del=false where id=... and del =true
  • 打赏
  • 举报
回复
类似于vfp的 逻辑删除和物理删除
  • 打赏
  • 举报
回复
他的意思应该是:
在你的那个表里加个字段。字段名例如是 del
如果要删除某行,则直接把这行的del 赋为 true
到时候select 的时候,只select * from table where del <> true
courage1 2006-05-14
  • 打赏
  • 举报
回复
举个例子看看哦
cic_wxf 2006-05-14
  • 打赏
  • 举报
回复
我做这样的程序是不会让他真正删除,只是在数据库中的某一个字段上添加一个标记而已

这样的话你想恢复数据,就很容易了

110,568

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧