C# 无法关闭MySQL数据库连接

C# 无法关闭MySQL数据库连接,c#,mysql,asp.net,.net,C#,Mysql,Asp.net,.net,我是ASP.NET新手,我自己也在学习。问题是,当页面加载时,我已成功连接到数据库,我的意思是当调用page\u Load方法时,如: MySqlConnection con = null; protected void Page_Load(object sender, EventArgs e) { if (con == null) { ConnectDataBase(); } } 假设页面加载时它成功连接!现在我要关闭连接,如下所示: con.C

我是ASP.NET新手,我自己也在学习。问题是,当页面加载时,我已成功连接到数据库,我的意思是当调用
page\u Load
方法时,如:

MySqlConnection con = null;

protected void Page_Load(object sender, EventArgs e)
{
    if (con == null)
    {
        ConnectDataBase();
    }
}
假设页面加载时它成功连接!现在我要关闭连接,如下所示:

  con.Close();
所以我应该在哪里关闭()它,因为我是这项工作的新手,所以我不知道我是否可以使用
Page\u Close
方法,在那里我可以关闭连接


有人能告诉我做这件事的其他好方法或想法吗。问题是我只想关闭连接

您必须在完成连接后立即将其关闭。如果您有一些需要数据库的代码,请打开连接,获取数据,然后断开连接

最好始终使用
,因为它会为您关闭并处理连接(即使发生异常):


您必须在完成连接后立即将其关闭。如果您有一些需要数据库的代码,请打开连接,获取数据,然后断开连接

最好始终使用
,因为它会为您关闭并处理连接(即使发生异常):


正如Tim所说,您应该只在需要时打开它,并使用
using
语句如下:

protected void Page_Load(object sender, EventArgs e)
{
    using(var con = new MySqlConnection(<args>))
    {

    } //at the end of this block, the connection will be Disposed automatically.
}
受保护的无效页面加载(对象发送方,事件参数e)
{
使用(var con=new MySqlConnection())
{
}//在该块结束时,将自动释放连接。
}

正如Tim所说,您应该只在需要时打开它,并使用
语句,如下所示:

protected void Page_Load(object sender, EventArgs e)
{
    using(var con = new MySqlConnection(<args>))
    {

    } //at the end of this block, the connection will be Disposed automatically.
}
受保护的无效页面加载(对象发送方,事件参数e)
{
使用(var con=new MySqlConnection())
{
}//在该块结束时,将自动释放连接。
}

始终在需要的地方打开和关闭它,最好使用
using
-语句。您需要在每次回发时(重新)创建连接,因为所有变量都是在页面生命周期结束后在服务器上释放的。你可以让它静止,但是!因此,我将使用一个局部变量,而不是字段,并始终在我需要的方法中创建连接。即使出现错误,也会关闭连接。始终在需要时打开和关闭连接,最好使用
using
-语句。您需要在每次回发时(重新)创建连接,因为所有变量都是在页面生命周期结束后在服务器上释放的。你可以让它静止,但是!因此,我将使用一个局部变量,而不是字段,并始终在我需要的方法中创建连接。即使发生错误,也会关闭连接。