datagridveiw Ilist 保存

mingcsharp 2012-04-06 11:02:22
UserBll bll = new UserBll();
IList<Users> lst = bll.GetAllUsers();
dataGridView1.DataSource = lst;

像这样的,我给dgv一个Ilist集合,然后我再对这个集合进行一些增删改的操作,我想一次性的保存到数据库,要怎么实现呢
我一次不止操作一行数据哟
网上看到不少都是对一行进行增删改,想对多行操作就麻烦了,

别告诉我让我全部清空数据库中原有的,再全部一行行的插入
求高手指明点更好的办法
...全文
231 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
mingcsharp 2012-04-07
  • 打赏
  • 举报
回复
向14楼学习,
mingcsharp 2012-04-06
  • 打赏
  • 举报
回复
主要是一行一行的删了再加,你不觉得浪费吗?
难道这iList<T>绑定的就不能多行增删改了??
mngzilin 2012-04-06
  • 打赏
  • 举报
回复
不判断只能删除重新添加了,添加标记只是为了操作少一些
mingcsharp 2012-04-06
  • 打赏
  • 举报
回复
怎么没人呢?
mingcsharp 2012-04-06
  • 打赏
  • 举报
回复
照你这个说,比如我现在,我添加了一行,行号是5,我又把第四行改了,第三行我也改了,
保存的时候我就算知道是那几行,可是也难知道是添加还是修改吧
并且还要来个if(添加){添加}if(修改){修改}对吧,感觉不是很好
mngzilin 2012-04-06
  • 打赏
  • 举报
回复
你还是在CellEdit事件中记录增删改的行数据索引,然后再执行相应的sql语句进行增删改来的实际些
熙风 2012-04-06
  • 打赏
  • 举报
回复
保存时,遍历集合,插入数据库,
赵4老师 2012-04-06
  • 打赏
  • 举报
回复
如果整个表的记录数不超过一万条,且修改表的频率不超过每天一次,我就更新整个表。
mingcsharp 2012-04-06
  • 打赏
  • 举报
回复
那你说我要是想弄个表格,里面可以让增删改的,然后保存的,用什么控件,什么方法实现比较好?
q1231261 2012-04-06
  • 打赏
  • 举报
回复
批量编辑结合sql08的merge,这样好做点,不然存储过程太难看了。
q1231261 2012-04-06
  • 打赏
  • 举报
回复
gridview本身也就显示,要编辑批量提交不好弄,或者你给每个T一个标识,在提交的时候过滤一下。
mingcsharp 2012-04-06
  • 打赏
  • 举报
回复
还有人回吗?
回8楼的问题就行了。
NewUser2008 2012-04-06
  • 打赏
  • 举报
回复
UserBll 在时面写个状态吧 比如 State = 删除 or 修改 等等 然后批量理改数据库吧!
mingcsharp 2012-04-06
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 的回复:]

你dataGridView绑定的不是数据集,list跟数据库无任何关系你怎么直接更新到数据库呢,如果是数据库,可以用adapter去更新,你这种情况,我也只能通过sql去更新了,遍历一下,insert有什么不好吗
[/Quote]
请教一下,很多地方,都用Ilist<T>来绑定到DGV,这么说这种绑定只是显示的作用了?
tiangong789 2012-04-06
  • 打赏
  • 举报
回复
绑定时用隐藏列然后你新增时就加一条ID=0(或其他条件随你) 加多少条都这样标识 然后按照序列化循环去做更新和插入
bdmh 2012-04-06
  • 打赏
  • 举报
回复
你dataGridView绑定的不是数据集,list跟数据库无任何关系你怎么直接更新到数据库呢,如果是数据库,可以用adapter去更新,你这种情况,我也只能通过sql去更新了,遍历一下,insert有什么不好吗

111,126

社区成员

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

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

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