Nhibernate同一个单元内数据的增删改处理

jianghu 2009-04-15 11:12:18
利用Nhibernate技术将数据从数据库中查询出来并将数据绑定到界面上的DatagridView1控件上
即:DatagridView1.datasource = lst
如何实现以下的功能:
在datagridview1上删除一条数据,那末它在datagridview1上删除这条数据(注:数据库还是存在的)
然后再在datatridview1上新增几条数据,Datagridview1上显示这条数据(注:数据库还没有这几数据)
最后再在datagridview1上修改之前查询出来的几条数据,当然界面上已经修改成功了(注:数据库中并未修改)

完毕之后,点击[保存]按钮,系统将所做的操作持久化到数据库,保持界面数据与数据库数据一致!
也就是说所做的操作要在同一个工作单元内完成。

想了好久也没有想出来应该如何做,各位能给些意见吗?非常感谢能提供些代码!
...全文
65 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
jianghu 2009-04-15
  • 打赏
  • 举报
回复
看是看明白了,我最开始的时候也是这个想法,
但是我总觉得应该在nhibernate中有这个方法呢。

有一点不是特别的明白,向楼主请教一下,
就是如果在datagridview1中删除一行,让它不显示在界面上?
呵呵,谢谢指教啊。
leiounasi 2009-04-15
  • 打赏
  • 举报
回复
着很简单啊 你从数据库里查出来后绑定到 DatagridView1上了吧,然后你点击删除按钮的时候去调用DatagridView1里面对行的方法就可以了。添加类似。你说的第三个有点麻烦,你可以实例化两个Ilist做存储,一个做删除的存储(比如你在页面上删除了一行,那就把这行的这个对象add到这个ailst里面),一个做添加的存储,然后点击保存的时候去循环读取这个两个Ilist,在for删除Ilist的时候用Nhibernate的删除方法,循环结束后,在去for添加那个Ilist在这个for里去执行Nhibernate的save方法。这样可以实现~~
不知道楼主看懂了没有~~~
CeShenBeiWang 2009-04-15
  • 打赏
  • 举报
回复
帮顶

111,126

社区成员

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

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

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