MySql ADO.NET:Close()保持连接打开

时间:2015-05-07 22:20:48

标签: c# mysql .net ado.net dapper

我正在本地做一些测试,因为我在.NET上使用Entity Framework遇到了一些严重问题(很多块,并发问题等),所以我决定从底层开始分析Ado.NET连接

我正在调试我的代码,同时,我正在检查 MySql Workbench 的打开连接。

我正在调试的代码是下一个:

using (var con = new MySqlConnection(_connectionString))
        {
            con.Open();

            //this extension method is because i am using the Dapper Library
            var products = con.Query<Product>("Select productId, name from products");

            con.Close();
        }

因此,连接状态的一步一步是:

con.Open();

执行 open()方法后,连接已打开(命令:睡眠)

var products = con.Query<Product>("Select productId, name from products");

执行查询后,连接仍处于打开状态(逻辑上)。最后我执行:

con.Close();

之后,连接仍在命令中打开:sleep 。怎么可以避免呢?因为它会保持连接打开,直到我杀死IIS实例 ...它并不是很好的并发...因为如果有很多用户在数据库中检索数据,我就不会这样做;如果他们没有针对数据库执行任何操作,则需要打开许多连接。

如何改进?

0 个答案:

没有答案