Commit f93b5ffb authored by Marc Gravell's avatar Marc Gravell

Merge pull request #235 from mburbea/patch-1

QueryAsync<Dynamic> should return an IEnumerable<DapperRow>
parents 1bd4ee81 5b1ed92b
...@@ -18,18 +18,18 @@ public static partial class SqlMapper ...@@ -18,18 +18,18 @@ public static partial class SqlMapper
/// Execute a query asynchronously using .NET 4.5 Task. /// Execute a query asynchronously using .NET 4.5 Task.
/// </summary> /// </summary>
/// <remarks>Note: each row can be accessed via "dynamic", or by casting to an IDictionary&lt;string,object&gt;</remarks> /// <remarks>Note: each row can be accessed via "dynamic", or by casting to an IDictionary&lt;string,object&gt;</remarks>
public static Task<IEnumerable<dynamic>> QueryAsync(this IDbConnection cnn, string sql, dynamic param = null, IDbTransaction transaction = null, int? commandTimeout = null, CommandType? commandType = null) public static async Task<IEnumerable<dynamic>> QueryAsync(this IDbConnection cnn, string sql, dynamic param = null, IDbTransaction transaction = null, int? commandTimeout = null, CommandType? commandType = null)
{ {
return QueryAsync<dynamic>(cnn, typeof(DapperRow), new CommandDefinition(sql, (object)param, transaction, commandTimeout, commandType, CommandFlags.Buffered, default(CancellationToken))); return await QueryAsync<DapperRow>(cnn, typeof(DapperRow), new CommandDefinition(sql, (object)param, transaction, commandTimeout, commandType, CommandFlags.Buffered, default(CancellationToken))).ConfigureAwait(false);
} }
/// <summary> /// <summary>
/// Execute a query asynchronously using .NET 4.5 Task. /// Execute a query asynchronously using .NET 4.5 Task.
/// </summary> /// </summary>
/// <remarks>Note: each row can be accessed via "dynamic", or by casting to an IDictionary&lt;string,object&gt;</remarks> /// <remarks>Note: each row can be accessed via "dynamic", or by casting to an IDictionary&lt;string,object&gt;</remarks>
public static Task<IEnumerable<dynamic>> QueryAsync(this IDbConnection cnn, CommandDefinition command) public static async Task<IEnumerable<dynamic>> QueryAsync(this IDbConnection cnn, CommandDefinition command)
{ {
return QueryAsync<dynamic>(cnn, typeof(DapperRow), command); return await QueryAsync<DapperRow>(cnn, typeof(DapperRow), command).ConfigureAwait(false);
} }
/// <summary> /// <summary>
...@@ -461,7 +461,7 @@ private static async Task<int> ExecuteImplAsync(IDbConnection cnn, CommandDefini ...@@ -461,7 +461,7 @@ private static async Task<int> ExecuteImplAsync(IDbConnection cnn, CommandDefini
if (wasClosed) cnn.Close(); if (wasClosed) cnn.Close();
} }
} }
/// <summary> /// <summary>
/// Perform a multi mapping query with arbitrary input parameters /// Perform a multi mapping query with arbitrary input parameters
/// </summary> /// </summary>
...@@ -507,7 +507,7 @@ private static async Task<IEnumerable<TReturn>> MultiMapAsync<TReturn>(this IDbC ...@@ -507,7 +507,7 @@ private static async Task<IEnumerable<TReturn>> MultiMapAsync<TReturn>(this IDbC
} }
} }
private static IEnumerable<T> ExecuteReaderSync<T>(IDataReader reader, Func<IDataReader, object> func, object parameters) private static IEnumerable<T> ExecuteReaderSync<T>(IDataReader reader, Func<IDataReader, object> func, object parameters)
{ {
using (reader) using (reader)
{ {
...@@ -828,4 +828,4 @@ private async static Task<T> ExecuteScalarImplAsync<T>(IDbConnection cnn, Comman ...@@ -828,4 +828,4 @@ private async static Task<T> ExecuteScalarImplAsync<T>(IDbConnection cnn, Comman
return Parse<T>(result); return Parse<T>(result);
} }
} }
} }
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment