我正在使用FormView
并使用存储过程将其绑定到SqlDataSource
以编辑记录。事情是,更新记录后,我需要调用另一个函数,我正在使用该按钮的onClick
属性。将参数发送到存储过程后面的代码
此功能必须使用FormView
中编辑的记录的ID将一些记录插入另一个表中。我知道如何在同一存储过程中使用SCOPE_IDENTITY
,但是这次我需要一些在代码隐藏方面更容易完成的逻辑,但我不知道如何获取ID,因此任何线索都会很好。
下面是按钮:
<asp:Button ID="EditButton" runat="server" CausesValidation="True" CommandName="Update"
Text="Edit" OnClick="setProcessProgress" />
这里是后面的代码的精简版:
protected void setProcessProgress(object sender, EventArgs e)
{
int ID_p;
ID_p = ; //TODO: Here I need to obtain the ID of the last edited record from the EditButton
setProgress(ID_p);
}
存储过程是一个简单的UPDATE
声明。
我想传递一个参数到后面的代码,但不知道如何,也许这样的事情OnClick="setProcessProgress(@id)"
事实上,这已经无关'SCOPE_IDENTITY()',从如何我明白你的问题。我的意思是,你说你的存储过程是一个简单的'UPDATE'语句,但'SCOPE_IDENTITY()'用于获取最近***插入的***(not * updated *)行的ID。你的程序如何知道哪一行更新?你不是通过ID作为参数吗?如果没有,请显示您的存储过程的定义。 – 2012-07-10 10:49:22