public static async Task <IDictionary <string, object> > ReturnExecute(string sql, string[] outParamsName, DynamicParameters param = null, IDbTransaction dbTransaction = null, IDbConnection connection = null, SQLType type = SQLType.MySql) { if (connection != null) { if (connection.State != ConnectionState.Open) { connection.Open(); } param = param ?? new DynamicParameters(); await connection.ExecuteAsync(sql, param, commandType : CommandType.Text, transaction : dbTransaction); Dictionary <string, object> result = new Dictionary <string, object>(); foreach (var item in outParamsName) { result.Add(item, param.Get <object>(item)); } return(result); } else { switch (type) { case SQLType.SQLServer: using (IDbConnection conn = new SqlConnection(ConnectionString)) { conn.Open(); param = param ?? new DynamicParameters(); await conn.ExecuteAsync(sql, param, commandType : CommandType.Text); Dictionary <string, object> result = new Dictionary <string, object>(); foreach (var item in outParamsName) { result.Add(item, param.Get <object>(item)); } return(result); } case SQLType.MySql: using (IDbConnection conn = new MySqlData.MySql.Data.MySqlClient.MySqlConnection(ConnectionString)) { conn.Open(); param = param ?? new DynamicParameters(); await conn.ExecuteAsync(sql, param, commandType : CommandType.Text); Dictionary <string, object> result = new Dictionary <string, object>(); foreach (var item in outParamsName) { result.Add(item, param.Get <object>(item)); } return(result); } default: throw new Exception("Wrong type"); } } }
public void Setup() { using (var oldConnection = new OldMySqlConnection(s_connectionString)) { oldConnection.Open(); RunSetupSql(oldConnection); } using (var newConnection = new NewMySqlConnection(s_connectionString)) { newConnection.Open(); RunSetupSql(newConnection); } s_connectionString += ";database=benchmark"; m_oldConnection = new OldMySqlConnection(s_connectionString); m_oldConnection.Open(); m_newConnection = new NewMySqlConnection(s_connectionString); m_newConnection.Open(); }
public static async Task <IEnumerable <T> > Query <T>(string sql, DynamicParameters param = null, IDbTransaction dbTransaction = null, IDbConnection connection = null, SQLType type = SQLType.MySql) { if (connection != null) { if (connection.State != ConnectionState.Open) { connection.Open(); } param = param ?? new DynamicParameters(); return(await connection.QueryAsync <T>(sql, param, dbTransaction)); } else { switch (type) { case SQLType.SQLServer: using (IDbConnection conn = new SqlConnection(ConnectionString)) { conn.Open(); param = param ?? new DynamicParameters(); return(await conn.QueryAsync <T>(sql, param)); } case SQLType.MySql: using (IDbConnection conn = new MySqlData.MySql.Data.MySqlClient.MySqlConnection(ConnectionString)) { conn.Open(); param = param ?? new DynamicParameters(); return(await conn.QueryAsync <T>(sql, param)); } default: throw new Exception("Wrong type"); } } }
public static async Task <int> Execute(string sql, DynamicParameters param = null, IDbTransaction dbTransaction = null, IDbConnection connection = null, SQLType type = SQLType.MySql) { if (connection != null) { if (connection.State != ConnectionState.Open) { connection.Open(); } param = param ?? new DynamicParameters(); return(await connection.ExecuteAsync(sql, param, commandType : CommandType.Text, transaction : dbTransaction)); } else { switch (type) { case SQLType.SQLServer: using (IDbConnection conn = new SqlConnection(ConnectionString)) { conn.Open(); param = param ?? new DynamicParameters(); return(await conn.ExecuteAsync(sql, param, commandType : CommandType.Text)); } case SQLType.MySql: using (IDbConnection conn = new MySqlData.MySql.Data.MySqlClient.MySqlConnection(ConnectionString)) { conn.Open(); param = param ?? new DynamicParameters(); return(await conn.ExecuteAsync(sql, param, commandType : CommandType.Text)); } default: throw new Exception("Wrong type"); } } }
public static async Task <T> SPExecuteScadar <T>(string sql, DynamicParameters param = null, IDbTransaction dbTransaction = null, IDbConnection connection = null, SqlType type = SqlType.MySql) { if (connection != null) { if (connection.State != ConnectionState.Open) { connection.Open(); } param = param ?? new DynamicParameters(); return(await connection.ExecuteScalarAsync <T>(sql, param, commandType : CommandType.StoredProcedure, transaction : dbTransaction)); } else { switch (type) { case SqlType.SQLServer: using (IDbConnection conn = new SqlConnection(ConnectionString)) { conn.Open(); param = param ?? new DynamicParameters(); return(await conn.ExecuteScalarAsync <T>(sql, param, commandType : CommandType.StoredProcedure)); } case SqlType.MySql: using (IDbConnection conn = new MySqlData.MySql.Data.MySqlClient.MySqlConnection(ConnectionString)) { conn.Open(); param = param ?? new DynamicParameters(); return(await conn.ExecuteScalarAsync <T>(sql, param, commandType : CommandType.StoredProcedure)); } default: throw new ArgumentWrongException("Wrong type"); } } }