欢迎来到代码驿站!

.NET代码

当前位置:首页 > 软件编程 > .NET代码

ASP.NET一次性对GridView批量更新多行数据

时间:2022-09-22 10:41:21|栏目:.NET代码|点击:

假定有一个Product表,字段有(Id,Name,Quantity,...)我们要一次批量更新Quantity的值

首先在Gridview中,Quantity列以TemplateField显示,其他的列属性设为只读,把显示格式设为TextBox。

<asp:TemplateField HeaderText="Quantity">
    <itemtemplate>
    <asp:TextBox ID="editQuantity" runat="server" CssClass="GridEditingRow"   Width="24px" MaxLength="2" Text='<%#Eval("Quantity")%>' />
    </itemtemplate>
</asp:TemplateField>

在GridView下面添加一个Button控件,定义onclick方法为updateButton_Click

最后updateButton_Click代码为:

protected void updateButton_Click(object sender, EventArgs e)
{
    int rowsCount = grid.Rows.Count;
    GridViewRow gridRow;
    TextBox quantityTextBox;
    string productId;
    int quantity;
    bool success = true;
    // 遍历GridView中的每一行
    for (int i = 0; i < rowsCount; i++)
    {
        // 获行当前行
        gridRow = grid.Rows[i];
        // 通过DATAKEYS来取行没显示出来的ID号
        Id = grid.DataKeys[i].Value.ToString();
        // 
        quantityTextBox = (TextBox)gridRow.FindControl("editQuantity");
        // 转换为整形,如果输入的是非法字符Int32.TryParse返回FALSE
        if (Int32.TryParse(quantityTextBox.Text, out quantity))
        {
            // 调用业务层的方法更新数据
            success = success && BLL.UpdateItem(Id, quantity);
        }
        else
        {
            // 更新失败
            success = false;
        }
        // 显示信息
        statusLabel.Text = success ?
          "<br />更新成功!<br />" :
          "<br />更新失败!<br />";
    }
    // 重新绑定GridVIEW
    PopulateGridView();
}

上一篇:ASP.NET Core 实现自动刷新JWT Token

栏    目:.NET代码

下一篇:ASP.NET MVC实现区域路由

本文标题:ASP.NET一次性对GridView批量更新多行数据

本文地址:http://www.codeinn.net/misctech/214402.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有