关于GridView1_SelectedIndexChanged的问题
protected void GridView1_SelectedIndexChanged(object sender, EventArgs e)
{
this.prodid.Value = this.GridView1.SelectedValue.ToString();
this.qnt.Value = ((TextBox)this.GridView1.SelectedRow.Cells[6].FindControl("TextBox1")).Text.ToString();
this.SqlDataSource1.Insert();
}
其中this.SqlDataSource1.Insert();执行的是一个存储过程
我遇到的问题是每按一次选择按钮调用以上方法时会执行两次存储过程,为什么?怎样解决?
存储过程如下:
CREATE PROCEDURE Buyprod
@IDcard varchar(50),
@prodid varchar(50),
@qnt int
as
if exists(select * from cartbox where prodID=@prodid and IDcard=@IDcard and status=0)
begin
update cartbox set qnt=qnt+@qnt where prodID=@prodid and IDcard=@IDcard and status=0
end
else
begin
insert into cartbox(IDcard,prodid,qnt) values(@IDcard,@prodid,@qnt)
end
GO