每当我点击网页上的删除按钮时,我总是收到“连接没有关闭。连接的当前状态是打开的。",但我已经关闭了连接。
protected void DeleteButton_Click(object sender, EventArgs e)
{
con.Open();
SqlCommand comm = new SqlCommand("DELETE FROM [Table] where [Id] ='"+Id.Text+"'", con);
comm.ExecuteNonQuery();
con.Close();
ScriptManager.RegisterStartupScript(this, this.GetType(), "script", "alert('Successfully Deleted');", true);
disp_data();
}
我甚至试着改变
con.Close();
到
con.Dispose();
但我还是犯了同样的错误
1条答案
按热度按时间z9ju0rcb1#
你可能会认为一直创建新连接的代价很高。其实不然,因为有内置的连接池,连接实际上会被重用。因此,你应该这样做:
using模式负责关闭和释放SqlConnection和SqlCommand。接下来,您应该将
con
作为类成员删除,并在整个代码中使用此模式。