Multiple Results

Other topics

Base Multiple Results Example

To fetch multiple grids in a single query, the QueryMultiple method is used. This then allows you to retrieve each grid sequentially through successive calls against the GridReader returned.

var sql = @"select * from Customers where CustomerId = @id
            select * from Orders where CustomerId = @id
            select * from Returns where CustomerId = @id";

using (var multi = connection.QueryMultiple(sql, new {id=selectedId}))
{
   var customer = multi.Read<Customer>().Single();
   var orders = multi.Read<Order>().ToList();
   var returns = multi.Read<Return>().ToList();
} 

Syntax:

  • public static SqlMapper.GridReader QueryMultiple(this IDbConnection cnn, string sql, object param = null, IDbTransaction transaction = null, int? commandTimeout = null, CommandType? commandType = null)
  • public static SqlMapper.GridReader QueryMultiple(this IDbConnection cnn, CommandDefinition command)

Parameters:

ParameterDetails
cnnYour database connection, must already be open
sqlThe sql string to process, contains multiple queries
paramObject to extract parameters from
SqlMapper.GridReaderProvides interfaces for reading multiple result sets from a Dapper query

Contributors

Topic Id: 8

Example Ids: 12

This site is not affiliated with any of the contributors.