Dotnet Core数据库连接池默认是开启状态,连接数默认100,连接超时默认15秒。当然你可设置Pooling=false不启用数据连接池。
Data Source=localhost;Initial Catalog=LOP;User ID=sa;Password=nc;Persist Security Info=True;Pooling=true;Max Pool Size=16;Min Pool Size=0;Connection Lifetime=20;
Dapper对数据库连接池有两种管理方式:程序员自己控制和Dapper托管
创建IDbConnection后,如果添加conn.Open()代码行,相当于程序员自己管理Open和Closed; 如果你想让Dapper来管理Open和Closed就不要写conn.Open啦; 事务操作例外。
IDbConnection CreateConnection(DatabaseType dbType, string strConn)
{
IDbConnection connection = null;
if (string.IsNullOrWhiteSpace(strConn))
throw new ArgumentNullException("The Database Connection Undefined");
switch (dbType)
{
case DatabaseType.SqlServer:
connection = new SqlConnection(strConn);
break;
case DatabaseType.MySQL:
connection = new MySqlConnection(strConn);
break;
default:
throw new ArgumentNullException($"The Database Type ({dbType.ToString()}) Not Support");
}
//要自己控制 还是Dapper托管
connection.Open();
}