private static IDbConnection GetConnectionAll(ConnectionDetails connectionDetails) { return(connectionDetails.Database switch { Database.SqlServer => new Microsoft.Data.SqlClient.SqlConnection( GetConnectionString(connectionDetails)), Database.PostgreSql => new Npgsql.NpgsqlConnection( GetConnectionString(connectionDetails)), Database.MySql => new MySql.Data.MySqlClient.MySqlConnection( GetConnectionString(connectionDetails)), Database.OracleSql => new Oracle.ManagedDataAccess.Client.OracleConnection( GetConnectionString(connectionDetails)), Database.LegacySqlServer => new System.Data.SqlClient.SqlConnection( GetConnectionString(connectionDetails)), _ => new System.Data.Odbc.OdbcConnection( GetConnectionString(connectionDetails)), });
public static IDataReader GetDataReader(ConnectionDetails connectionDetails, QueryPlan queryPlan) { var connection = DbConnectionFactory.GetConnection(connectionDetails); if (queryPlan.Parameters?.Any() ?? false) { var parameters = new DynamicParameters(); foreach (var parameter in queryPlan.Parameters) { parameters.Add( parameter.Name, parameter.Value, parameter.DbType, parameter.Direction, parameter.Size, parameter.Precision, parameter.Scale); } return(ExecuteReader(connection, queryPlan.Query, parameters)); } return(ExecuteReader(connection, queryPlan.Query, null)); }
public static IDataReader GetDataReader(ConnectionDetails connectionDetails, string sqlText, List <Parameter> parameters = null) { var connection = DbConnectionFactory.GetConnection(connectionDetails); if (parameters?.Any() ?? false) { var dynamicParameters = new DynamicParameters(); foreach (var parameter in parameters) { dynamicParameters.Add( parameter.Name, parameter.Value, parameter.DbType, parameter.Direction, parameter.Size, parameter.Precision, parameter.Scale); } return(ExecuteReader(connection, sqlText, dynamicParameters)); } return(ExecuteReader(connection, sqlText, null)); }
public static IDbConnection GetConnection(ConnectionDetails connectionDetails) { return(DbConnectionFactory.GetConnection(connectionDetails)); }