GridView的编辑问题?(因该是挺常见的问题)是不是太简单了,还是分太少了?@_@

ssxs 2010-02-10 01:15:30
Private Sub planreceiveGridView_RowEditing(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewEditEventArgs) Handles planreceiveGridView.RowEditing

planreceiveGridView.EditIndex = e.NewEditIndex

'绑定数据源
bind()


如果在这同时,别人在其他终端给数据表里增添了数据,数据源中的查询得到的数据比以前多了,在随后的画面显示中,处于编辑状态的数据往往不是在这之前点击想要编辑的数据。这样的问题如何解决。
...全文
157 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
ssxs 2010-02-10
  • 打赏
  • 举报
回复
大家帮助一下,如果有网址的说明也可以发一下。谢谢
ssxs 2010-02-10
  • 打赏
  • 举报
回复
稍微顶一下,已经加到40分了,还需要加?
ssxs 2010-02-10
  • 打赏
  • 举报
回复
我好像没把问题说清楚。

假如aaa.aspx 有个列表显示

名字 钱
小刘 100 编辑
小李 120 编辑

这时其他人在其他机子上添加了一条
名字 钱
小张 90 编辑
小刘 100 编辑
小李 120 编辑

这时我看到的列表只有两条
我这时点击'小李'的 编辑
在数据重新绑定后
这时能编辑的行实际是'小刘',而不是'小李'。因为新的数据绑定后有了'小张'

而我需要编辑的是'小李'
toxuecheng111 2010-02-10
  • 打赏
  • 举报
回复
在DataKeyNames中写上要查询的主键,编辑时候再引用
ssxs 2010-02-10
  • 打赏
  • 举报
回复
to:hongnylaugh

不是很明白,先绑定后编辑,我刚刚试了一下,好像不行。

大家不可能没遇到这种情况吧
hongnylaugh 2010-02-10
  • 打赏
  • 举报
回复
引用 7 楼 ssxs 的回复:
to:lzsh0622

你的意思是在planreceiveGridView_RowEditing()里绑定的时候,重新用主键查询一下,循环后得到这个主键对应的第几条,然后planreceiveGridView.EditIndex=对应的数字吗?

用SQL锁定数据行
开启事务begintranc,select要编辑的记录
保存后commit
失败rollback
hongnylaugh 2010-02-10
  • 打赏
  • 举报
回复
先把该行绑定后再进行编辑
ssxs 2010-02-10
  • 打赏
  • 举报
回复
to:lzsh0622

你的意思是在planreceiveGridView_RowEditing()里绑定的时候,重新用主键查询一下,循环后得到这个主键对应的第几条,然后planreceiveGridView.EditIndex=对应的数字吗?
  • 打赏
  • 举报
回复
使用Ajax实现页面自动实时更新
lzsh0622 2010-02-10
  • 打赏
  • 举报
回复
编辑时,按主键查询,重新select.
ssxs 2010-02-10
  • 打赏
  • 举报
回复
谢谢,大家的解答。
我实际测试了一下,是存在这个问题的。
该行没有主键,你的意思能说的详细些可以吗?

我现在取数据库的数据是通过一个代理服务取得,我这里把datatable和SQL语句送到代理服务,由代理服务从数据库得到数据,然后以datatable的方式,送给我,需要处理的话,我处理以下,然后和GridView绑定。
moudy 2010-02-10
  • 打赏
  • 举报
回复
这个不是GridView的编辑问题,而是你该行没有主键,编辑后按主键更新数据库,跟别人添加了数据又什么关系。
imfor 2010-02-10
  • 打赏
  • 举报
回复
没有这个问题,不必担心。
ssxs 2010-02-10
  • 打赏
  • 举报
回复
稍稍顶一下,稍稍顶一下

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

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