gpt4 book ai didi

c# - 在 dapper 中进行连接管理的最佳方式?

转载 作者:太空宇宙 更新时间:2023-11-03 11:22:42 24 4
gpt4 key购买 nike

我在 MySQL 数据库上使用以下方式在 dapper 中查询。

using (var db = new MySqlConnection(ConfigurationHandler.GetSection<string>(StringConstants.ConnectionString)))
{
resultSet = db.Execute(UpdateQuery, new { _val = terminalId }, commandType: CommandType.Text);
db.Close();//should i call this or not
db.Dispose();//should i call this or not
}

这是显式调用 db.close 和 db.dispose 的好方法吗?我的应用程序每秒可以处理 100 个请求。

最佳答案

using block 是围绕 IDisposable 接口(interface)的一种便利。它确保在 block 的末尾调用 dispose 方法。

参见:https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/keywords/using-statement .

在您的情况下,您可以删除对 db.Close() 和 db.Dispose() 的显式调用,因为您没有重新使用连接对象。

using (var db = new MySqlConnection(ConfigurationHandler.GetSection<string>(StringConstants.ConnectionString)))
{
resultSet = db.Execute(UpdateQuery,
new { _val = terminalId }, commandType: CommandType.Text);
}

以下链接提供了有关 .Close 与 .Dispose 的更多详细信息:https://stackoverflow.com/a/61171/1028323

关于c# - 在 dapper 中进行连接管理的最佳方式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57969426/

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