gpt4 book ai didi

c# - 在处理 SQLConnection 之前,我是否必须 Close() ?

转载 作者:IT王子 更新时间:2023-10-29 03:34:44 26 4
gpt4 key购买 nike

根据我的其他 question here about Disposable objects ,我们应该在 using block 结束之前调用 Close() 吗?

using (SqlConnection connection = new SqlConnection())
using (SqlCommand command = new SqlCommand())
{
command.CommandText = "INSERT INTO YourMom (Amount) VALUES (1)";
command.CommandType = System.Data.CommandType.Text;

connection.Open();
command.ExecuteNonQuery();

// Is this call necessary?
connection.Close();
}

最佳答案

由于您有一个 using block ,因此将调用 SQLCommand 的 Dispose 方法并关闭连接:

// System.Data.SqlClient.SqlConnection.Dispose disassemble
protected override void Dispose(bool disposing)
{
if (disposing)
{
this._userConnectionOptions = null;
this._poolGroup = null;
this.Close();
}
this.DisposeMe(disposing);
base.Dispose(disposing);
}

关于c# - 在处理 SQLConnection 之前,我是否必须 Close() ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1195829/

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