asp.net问题。。gridview中要实现编辑更新。我的数据操作是在数据访问层操作。为什么点更新后,更新的是0

我的具体问题是这样的:当我点更新时会在相应行出现txtboxt并有原值,当我不改任何字段时,直接点更新,最后一个字段就被更新为0,再点一次倒数第二个也变成0了,以此类推,... 我的具体问题是这样的:当我点更新时会在相应行出现txtboxt并有原值,当我不改任何字段时,直接点更新,最后一个字段就被更新为0,再点一次倒数第二个也变成0了,以此类推,有数据更改时点更新该字段也变成0。在更新事件中我应该写什么代码?我已经写了若干代码,可能不完整。出现这种问题是什么原因?
sql语句应该没错。我一步一步跟踪到了Update语句就有错,传过来的值是0.ID也没错。就是获取Textbox没有获取到。应该如何获取呢?我的更新事件代码是这样写的:
protected void Gv_user_RowUpdating(object sender, GridViewUpdateEventArgs e)
{
string RowToUpdata = Gv_user.DataKeys[e.RowIndex].Value.ToString();
int ID = Convert.ToInt32(RowToUpdata);
UserInfo obj = new UserInfo();
obj.LoginName = ((TextBox)(Gv_user.Rows[e.RowIndex].Cells[1].Controls[0])).Text.ToString().Trim();
obj.PassWord = ((TextBox)(Gv_user.Rows[e.RowIndex].Cells[2].Controls[0])).Text.ToString().Trim();
obj.UserName = ((TextBox)(Gv_user.Rows[e.RowIndex].Cells[3].Controls[0])).Text.ToString().Trim();
obj.ID = ID;
NewsMgr.BLL.User.UpdateUser(obj);
Gv_user.EditIndex = -1;
BindPage();
}
展开
 我来答
kong_bird
2009-12-01 · TA获得超过321个赞
知道答主
回答量:244
采纳率:0%
帮助的人:129万
展开全部
没看过你写的代码,你看看更新的sql语句是不是有问题,仔细调试一下
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
scarelettewlh
推荐于2021-02-04 · 超过14用户采纳过TA的回答
知道答主
回答量:25
采纳率:0%
帮助的人:30.1万
展开全部
这是我写的一个例子,你看下对你有没有帮助。。。
//更新
protected void gv_user_RowUpdating(object sender, GridViewUpdateEventArgs e)
{
GridViewRow gvr = gv_user.Rows[e.RowIndex];

//获取用户名
string uname = ((TextBox)gvr.Cells[0].FindControl("txt_uname")).Text;

//获取用户密码
string upwd = ((TextBox)gvr.Cells[1].FindControl("txt_upwd")).Text;

int id = Convert.ToInt32(gv_user.DataKeys[e.RowIndex].Value.ToString());

if (bll.UpdateUserByUid(uname,upwd,id))
{
gv_user.EditIndex = -1;
Bind();
}
else
{
ClientScript.RegisterStartupScript(this.GetType(), "msg", "<script>alert('修改用户信息失败!')</script>");
}
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式