【发布时间】: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