gpt4 book ai didi

c# - "connection.Close()"是关闭 SQL 连接的最佳或最安全的方法吗?

转载 作者:行者123 更新时间:2023-11-30 19:38:00 25 4
gpt4 key购买 nike

我一直在用

connection.Close();

但这是我在 .NET 中的第一个项目,我不确定我是否正确关闭了它。

我不希望我的网站在发布到真实主机后立即死掉。

通常我这样做:

    SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["ConnectionString"].ToString());

SqlCommand cmd = new SqlCommand();

cmd.Connection = conn;

// <some code>

conn.Open();
/ <some code>
conn.Close();

最佳答案

您应该将连接放在 using 语句中;

using(var connection = new SqlConnection)
{
connection.Open();
...other code using it here.
}

using 语句确保在您使用完 SqlConnection 后将其释放。在您的场景中(取决于您放置 close 方法的位置),如果异常被关闭,它将永远不会到达 Close() 方法并且连接将保持打开状态。

更好的是,因为您正在构建一个网站。 Request 对象(应该可用)上应该有一个名为 RegisterForDispose 的方法。这将在请求结束时自动处理连接(关闭它)。你可以像这样使用它:

var connection = new SqlConnection();
Request.RegisterForDispose(connection);

两者最终都完成了同样的事情,但后者提供了更大的灵 active 。

关于c# - "connection.Close()"是关闭 SQL 连接的最佳或最安全的方法吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35675865/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com