主题:  datagrid 命令问题???急呀!!!

ztong

职务:普通成员
等级:1
金币:0.0
发贴:129
#12006/2/7 17:44:29
本人在使用datagrid进行删除命令时使用下面的程序执行:
public void zhsylxxx_DeleteCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
string selxh=zhsylxxx.DataKeys[e.Item.ItemIndex].ToString();
string sql="delete from 宗海信息数 where 宗海序号='"+selxh+"'";
conn.open();
SqlCommand cmd = new SqlCommand(sql,conn);
cmd.ExecuteNonQuery();
conn.Close();
this.OpenDB3();
this.Label3.Text="删除成功";
}
this.OpenDB3();是数据库与datagrid的重新绑定,发现执行两次,本来删除正确,两次执行删除了两行,而且在最后一行,由于执行两次,发生找不到此行的错误,怎么解决呀?如何让它只执行一次操作呢?大虾帮忙啊!!!



ztong

职务:普通成员
等级:1
金币:0.0
发贴:129
#22006/2/7 17:52:12
而且:使用
public void zhsylxxx_ItemCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
if (e.CommandName == "append1"
{
string sql4 = "select * from 宗海信息数 where 宗海序号='"+((System.Web.UI.WebControls.TextBox)e.Item.FindControl("newzhxh").Text+"'";
conn.open();
SqlCommand cmd=new SqlCommand(sql4,conn);
SqlDataReader dr=cmd.ExecuteReader();
if(dr.Read())
{
this.Label3.Text="该材料名称已经存在";
dr.Close();
conn.Close();
}
else
{
dr.Close();
string sql11="insert into 宗海信息数..............    
this.Label3.Text="添加成功";
conn.Close();
}
}

this.OpenDB3();    
}
发现也执行两次,那么label3.text中显示的内容就出现错误了,如何保证只执行一次呢?
大虾帮忙啊!



蓝鲸

职务:版主
等级:5
金币:42.1
发贴:2614
#32006/2/8 17:11:53
估计问题出在this.OpenDB3();上


非常大鱼