public async Task <IMultipleResultReader> GetMultipleAsync(string tableName, string schemaName, GetMultiplePredicate predicate = null, int?commandTimeout = null) => await _dapper.GetMultipleAsync(Connection, predicate, _transaction, commandTimeout, tableName, schemaName);
public async Task <IMultipleResultReader> GetMultipleAsync(GetMultiplePredicate predicate = null, int?commandTimeout = null) => await GetMultipleAsync(null, predicate, commandTimeout);
public async Task <IMultipleResultReader> GetMultipleAsync(string tableName, GetMultiplePredicate predicate = null, int?commandTimeout = null) => await GetMultipleAsync(tableName, null, predicate, commandTimeout);
public IMultipleResultReader GetMultiple(string tableName, GetMultiplePredicate predicate = null, int?commandTimeout = null) => GetMultiple(tableName, null, predicate, commandTimeout);
public IMultipleResultReader GetMultiple(string tableName, string schemaName, GetMultiplePredicate predicate = null, int?commandTimeout = null) => _dapper.GetMultiple(Connection, predicate, _transaction, commandTimeout, tableName, schemaName);
protected GridReaderResultReader GetMultipleByBatch(IDbConnection connection, GetMultiplePredicate predicate, IDbTransaction transaction, int?commandTimeout, string tableName, string schemaName) { Dictionary <string, object> parameters = new Dictionary <string, object>(); StringBuilder sql = new StringBuilder(); foreach (var item in predicate.Items) { IClassMapper classMap = SqlGenerator.Configuration.GetMap(item.Type); IPredicate itemPredicate = item.Value as IPredicate; if (itemPredicate == null && item.Value != null) { itemPredicate = GetPredicate(classMap, item.Value); } sql.AppendLine(SqlGenerator.Select(classMap, itemPredicate, item.Sort, parameters, schemaName, tableName) + SqlGenerator.Configuration.Dialect.BatchSeperator); } DynamicParameters dynamicParameters = new DynamicParameters(); foreach (var parameter in parameters) { dynamicParameters.Add(parameter.Key, parameter.Value); } SqlMapper.GridReader grid = connection.QueryMultiple(sql.ToString(), dynamicParameters, transaction, commandTimeout, CommandType.Text); return(new GridReaderResultReader(grid)); }
protected GridReaderResultReader GetMultipleByBatch(IDbConnection connection, GetMultiplePredicate predicate, IDbTransaction transaction, int?commandTimeout, IList <IReferenceMap> includedProperties = null) { var parameters = new Dictionary <string, object>(); var sql = new StringBuilder(); foreach (var item in predicate.Items) { var classMap = SqlGenerator.Configuration.GetMap(item.Type); var itemPredicate = item.Value as IPredicate; if (itemPredicate == null && item.Value != null) { itemPredicate = GetPredicate(classMap, item.Value); } _ = sql.Append(SqlGenerator.Select(classMap, itemPredicate, item.Sort, parameters, null, includedProperties)).AppendLine(SqlGenerator.Configuration.Dialect.BatchSeperator); } var dynamicParameters = GetDynamicParameters(parameters); var grid = connection.QueryMultiple(sql.ToString(), dynamicParameters, transaction, commandTimeout, CommandType.Text); return(new GridReaderResultReader(grid)); }
public Task <IMultipleResultReader> GetMultipleAsync(IDbConnection connection, GetMultiplePredicate predicate, IDbTransaction transaction, int?commandTimeout) => SqlGenerator.SupportsMultipleStatements() ? GetMultipleByBatchAsync(connection, predicate, transaction, commandTimeout) : GetMultipleBySequenceAsync(connection, predicate, transaction, commandTimeout);
public IMultipleResultReader GetMultiple(GetMultiplePredicate predicate, int?commandTimeout) { return(_dapper.GetMultiple(Connection, predicate, _transaction, commandTimeout)); }
public static async Task <IMultipleResultReader> GetMultipleAsync(this IDbConnection connection, string tableName, GetMultiplePredicate predicate = null, IDbTransaction transaction = null, int?commandTimeout = null) => await GetMultipleAsync(connection, tableName, null, predicate, transaction, commandTimeout);
protected SequenceReaderResultReader GetMultipleBySequence(IDbConnection connection, GetMultiplePredicate predicate, IDbTransaction transaction, int?commandTimeout) { IList <SqlMapper.GridReader> items = new List <SqlMapper.GridReader>(); LastExecutedCommand = string.Empty; foreach (var item in predicate.Items) { Dictionary <string, object> parameters = new Dictionary <string, object>(); IClassMapper classMap = SqlGenerator.Configuration.GetMap(item.Type); IPredicate itemPredicate = item.Value as IPredicate; if (itemPredicate == null && item.Value != null) { itemPredicate = GetPredicate(classMap, item.Value); } string sql = SqlGenerator.Select(classMap, itemPredicate, item.Sort, parameters); DynamicParameters dynamicParameters = GetDynamicParameters(parameters); LastExecutedCommand += string.Format("{0}{1}{1}", sql, Environment.NewLine); SqlMapper.GridReader queryResult = connection.QueryMultiple(sql, dynamicParameters, transaction, commandTimeout, CommandType.Text); items.Add(queryResult); } return(new SequenceReaderResultReader(items)); }
public static IMultipleResultReader GetMultiple(this IDbConnection connection, string tableName, string schemaName, GetMultiplePredicate predicate = null, IDbTransaction transaction = null, int?commandTimeout = null) { return(Instance.GetMultiple(connection, predicate, transaction, commandTimeout, tableName, schemaName)); }
/// <summary> /// Executes a select query for multiple objects, returning IMultipleResultReader for each predicate. /// </summary> public static IMultipleResultReader GetMultiple(this IDbConnection connection, GetMultiplePredicate predicate = null, IDbTransaction transaction = null, int?commandTimeout = null) => GetMultiple(connection, null, null, predicate, transaction, commandTimeout);
protected SequenceReaderResultReader GetMultipleBySequence(IDbConnection connection, GetMultiplePredicate predicate, IDbTransaction transaction, int?commandTimeout, IList <IReferenceMap> includedProperties = null) { IList <SqlMapper.GridReader> items = new List <SqlMapper.GridReader>(); foreach (var item in predicate.Items) { var parameters = new Dictionary <string, object>(); var classMap = SqlGenerator.Configuration.GetMap(item.Type); var itemPredicate = item.Value as IPredicate; if (itemPredicate == null && item.Value != null) { itemPredicate = GetPredicate(classMap, item.Value); } var sql = SqlGenerator.Select(classMap, itemPredicate, item.Sort, parameters, null, includedProperties); var dynamicParameters = GetDynamicParameters(parameters); var queryResult = connection.QueryMultiple(sql, dynamicParameters, transaction, commandTimeout, CommandType.Text); items.Add(queryResult); } return(new SequenceReaderResultReader(items)); }
/// <summary> /// Executes a select query for multiple objects, returning IMultipleResultReader for each predicate. /// </summary> public static IMultipleResultReader GetMultiple(this IDbConnection connection, GetMultiplePredicate predicate, IDbTransaction transaction = null, int?commandTimeout = null) { return(Instance.GetMultiple(connection, predicate, transaction, commandTimeout)); }
/// <summary> /// Executes a select query for multiple objects, returning IMultipleResultReader for each predicate. /// </summary> public static async Task <IMultipleResultReader> GetMultipleAsync(this IDbConnection connection, GetMultiplePredicate predicate, IDbTransaction transaction = null, int?commandTimeout = null) { return(await Instance.GetMultipleAsync(connection, predicate, transaction, commandTimeout)); }
public async Task <IMultipleResultReader> GetMultipleAsync(IDbConnection connection, GetMultiplePredicate predicate, IDbTransaction transaction, int?commandTimeout, string tableName, string schemaName) { if (SqlGenerator.SupportsMultipleStatements()) { return(await GetMultipleByBatchAsync(connection, predicate, transaction, commandTimeout, tableName, schemaName)); } return(await GetMultipleBySequenceAsync(connection, predicate, transaction, commandTimeout, tableName, schemaName)); }
public IMultipleResultReader GetMultiple(GetMultiplePredicate predicate = null, int?commandTimeout = null) => GetMultiple(null, predicate, commandTimeout);
protected SequenceReaderResultReader GetMultipleBySequence(IDbConnection connection, GetMultiplePredicate predicate, IDbTransaction transaction, int?commandTimeout, string tableName, string schemaName) { IList <SqlMapper.GridReader> items = new List <SqlMapper.GridReader>(); foreach (var item in predicate.Items) { Dictionary <string, object> parameters = new Dictionary <string, object>(); IClassMapper classMap = SqlGenerator.Configuration.GetMap(item.Type); IPredicate itemPredicate = item.Value as IPredicate; if (itemPredicate == null && item.Value != null) { itemPredicate = GetPredicate(classMap, item.Value); } string sql = SqlGenerator.Select(classMap, itemPredicate, item.Sort, parameters, schemaName, tableName); DynamicParameters dynamicParameters = new DynamicParameters(); foreach (var parameter in parameters) { dynamicParameters.Add(parameter.Key, parameter.Value); } SqlMapper.GridReader queryResult = connection.QueryMultiple(sql, dynamicParameters, transaction, commandTimeout, CommandType.Text); items.Add(queryResult); } return(new SequenceReaderResultReader(items)); }
public IMultipleResultReader GetMultiple(GetMultiplePredicate predicate, IDbTransaction transaction = null, int?commandTimeout = null) { transaction = transaction ?? _transaction; return(_dapper.GetMultiple(Connection, predicate, transaction, commandTimeout)); }