【问题标题】:asp.net update table on click of a button单击按钮时asp.net更新表
【发布时间】:2013-03-01 04:44:27
【问题描述】:

我是 asp.net 的新手,遇到了一个非常愚蠢的问题。但我无法弄清楚。我有一个由 page_load 上的 DB 数据填充的表单,用户更新表单的输入文本并单击“更新”按钮。它会更新,但会使用旧数据进行更新。

为什么要用旧数据更新它?

这里是aspx格式

<form id="form1" runat="server">
<table>
    <tr>
        <td>ID</td>
        <td><asp:Label ID="lbl_id" runat="server" Text=""></asp:Label></td>
    </tr>
    <tr>
        <td>FirstName</td>
        <td><asp:TextBox ID="txt_firstname" runat="server"></asp:TextBox></td>
    </tr>
    <tr>
        <td>LastName</td>
        <td><asp:TextBox ID="txt_lastname" runat="server"></asp:TextBox></td>
    </tr>
</table>

下面是代码

protected void Guncelle_Click(object sender, EventArgs e)
{
        DbCommand dbCommand;
        dbCommand = db.GetStoredProcCommand("MedBul_Update_Registration_Request");
        db.AddInParameter(dbCommand, "id", DbType.Int16, request_id);
        db.AddInParameter(dbCommand, "FirstName", DbType.String, txt_firstname.Text.ToString().Trim());
        db.AddInParameter(dbCommand, "LastName", DbType.String, txt_lastname.Text.ToString().Trim());
        db.ExecuteNonQuery(dbCommand);
 }

这里是存储过程

Create PROCEDURE [dbo].[MedBul_Update_Registration_Request]
(@id int,@FirstName varchar(50),@LastName varchar(50))

    AS
    BEGIN

    update NewProfessionalRequest set FirstName= @FirstName, LastName =@LastName
     where id = @id

    END

    GO

【问题讨论】:

  • 请添加您的存储过程的内容。
  • 在调试模式下再次单击按钮 Guncelle 时,您在 txt_firstname.Text 中看到了什么?
  • 显示新数据。
  • 向我们展示存储过程。我认为问题存在
  • 您使用哪个版本的 .net?

标签: asp.net sql-server stored-procedures sql-update


【解决方案1】:

您提到您在页面加载时使用数据填充页面控件。 像这样在 Page_Load 上包装你的代码:

if(!isPostBack)
{
    // populate form with data from DB here
}

因为当您点击 UpdateBtn Page_Load 事件时,系统会触发您的更改,并使用数据库中的“旧”数据重写您的更改。

【讨论】:

    【解决方案2】:

    您应该在页面加载时检查 Page.IsPostBack 属性。

    见以下链接

    http://msdn.microsoft.com/en-in/library/system.web.ui.page.ispostback.aspx

    【讨论】:

    • 我正在使用 if(!isPostBack)
    猜你喜欢
    • 1970-01-01
    • 2012-07-01
    • 1970-01-01
    • 1970-01-01
    • 2012-05-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-09-28
    相关资源
    最近更新 更多