From dc30969757885a40f63c9718894be6a9af9ab56a Mon Sep 17 00:00:00 2001 From: Jason Graves Date: Fri, 11 Feb 2022 16:38:26 -0600 Subject: [PATCH 1/2] Added ConfigureAwait analyzers to help enforce ConfigureAwait(false) statements. --- QueryBuilder/QueryBuilder.csproj | 4 ++++ SqlKata.Execution/SqlKata.Execution.csproj | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/QueryBuilder/QueryBuilder.csproj b/QueryBuilder/QueryBuilder.csproj index 6335a971..82a1ce5f 100755 --- a/QueryBuilder/QueryBuilder.csproj +++ b/QueryBuilder/QueryBuilder.csproj @@ -25,6 +25,10 @@ + + all + runtime; build; native; contentfiles; analyzers; buildtransitive + diff --git a/SqlKata.Execution/SqlKata.Execution.csproj b/SqlKata.Execution/SqlKata.Execution.csproj index 41c3dba2..0094c6d7 100644 --- a/SqlKata.Execution/SqlKata.Execution.csproj +++ b/SqlKata.Execution/SqlKata.Execution.csproj @@ -27,6 +27,10 @@ + + all + runtime; build; native; contentfiles; analyzers; buildtransitive + From 35f0a8bda3af4e00700eac79df67c558fcee3b3d Mon Sep 17 00:00:00 2001 From: Jason Graves Date: Fri, 11 Feb 2022 16:45:50 -0600 Subject: [PATCH 2/2] Added all missing ConfigureAwait(false) statements. --- SqlKata.Execution/PaginationResult.cs | 4 +- SqlKata.Execution/Query.Extensions.cs | 62 +++++++++++++-------------- SqlKata.Execution/QueryFactory.cs | 56 ++++++++++++------------ 3 files changed, 61 insertions(+), 61 deletions(-) diff --git a/SqlKata.Execution/PaginationResult.cs b/SqlKata.Execution/PaginationResult.cs index 85277503..1820ae97 100644 --- a/SqlKata.Execution/PaginationResult.cs +++ b/SqlKata.Execution/PaginationResult.cs @@ -74,7 +74,7 @@ public PaginationResult Next(IDbTransaction transaction = null, int? timeout public async Task> NextAsync(IDbTransaction transaction = null, int? timeout = null, CancellationToken cancellationToken = default) { - return await this.Query.PaginateAsync(Page + 1, PerPage, transaction, timeout, cancellationToken); + return await this.Query.PaginateAsync(Page + 1, PerPage, transaction, timeout, cancellationToken).ConfigureAwait(false); } public Query PreviousQuery() @@ -89,7 +89,7 @@ public PaginationResult Previous(IDbTransaction transaction = null, int? time public async Task> PreviousAsync(IDbTransaction transaction = null, int? timeout = null, CancellationToken cancellationToken = default) { - return await this.Query.PaginateAsync(Page - 1, PerPage, transaction, timeout, cancellationToken); + return await this.Query.PaginateAsync(Page - 1, PerPage, transaction, timeout, cancellationToken).ConfigureAwait(false); } public PaginationIterator Each diff --git a/SqlKata.Execution/Query.Extensions.cs b/SqlKata.Execution/Query.Extensions.cs index af0af252..313883c9 100644 --- a/SqlKata.Execution/Query.Extensions.cs +++ b/SqlKata.Execution/Query.Extensions.cs @@ -15,7 +15,7 @@ public static bool Exists(this Query query, IDbTransaction transaction = null, i public async static Task ExistsAsync(this Query query, IDbTransaction transaction = null, int? timeout = null, CancellationToken cancellationToken = default) { - return await CreateQueryFactory(query).ExistsAsync(query, transaction, timeout, cancellationToken); + return await CreateQueryFactory(query).ExistsAsync(query, transaction, timeout, cancellationToken).ConfigureAwait(false); } public static bool NotExist(this Query query, IDbTransaction transaction = null, int? timeout = null) @@ -25,7 +25,7 @@ public static bool NotExist(this Query query, IDbTransaction transaction = null, public async static Task NotExistAsync(this Query query, IDbTransaction transaction = null, int? timeout = null, CancellationToken cancellationToken = default) { - return !(await CreateQueryFactory(query).ExistsAsync(query, transaction, timeout, cancellationToken)); + return !(await CreateQueryFactory(query).ExistsAsync(query, transaction, timeout, cancellationToken).ConfigureAwait(false)); } public static IEnumerable Get(this Query query, IDbTransaction transaction = null, int? timeout = null) @@ -35,7 +35,7 @@ public static IEnumerable Get(this Query query, IDbTransaction transaction public static async Task> GetAsync(this Query query, IDbTransaction transaction = null, int? timeout = null, CancellationToken cancellationToken = default) { - return await CreateQueryFactory(query).GetAsync(query, transaction, timeout, cancellationToken); + return await CreateQueryFactory(query).GetAsync(query, transaction, timeout, cancellationToken).ConfigureAwait(false); } public static IEnumerable Get(this Query query, IDbTransaction transaction = null, int? timeout = null) @@ -45,7 +45,7 @@ public static IEnumerable Get(this Query query, IDbTransaction transact public static async Task> GetAsync(this Query query, IDbTransaction transaction = null, int? timeout = null, CancellationToken cancellationToken = default) { - return await GetAsync(query, transaction, timeout, cancellationToken); + return await GetAsync(query, transaction, timeout, cancellationToken).ConfigureAwait(false); } public static T FirstOrDefault(this Query query, IDbTransaction transaction = null, int? timeout = null) @@ -55,7 +55,7 @@ public static T FirstOrDefault(this Query query, IDbTransaction transaction = public static async Task FirstOrDefaultAsync(this Query query, IDbTransaction transaction = null, int? timeout = null, CancellationToken cancellationToken = default) { - return await CreateQueryFactory(query).FirstOrDefaultAsync(query, transaction, timeout, cancellationToken); + return await CreateQueryFactory(query).FirstOrDefaultAsync(query, transaction, timeout, cancellationToken).ConfigureAwait(false); } public static dynamic FirstOrDefault(this Query query, IDbTransaction transaction = null, int? timeout = null) @@ -65,7 +65,7 @@ public static dynamic FirstOrDefault(this Query query, IDbTransaction transactio public static async Task FirstOrDefaultAsync(this Query query, IDbTransaction transaction = null, int? timeout = null, CancellationToken cancellationToken = default) { - return await FirstOrDefaultAsync(query, transaction, timeout, cancellationToken); + return await FirstOrDefaultAsync(query, transaction, timeout, cancellationToken).ConfigureAwait(false); } public static T First(this Query query, IDbTransaction transaction = null, int? timeout = null) @@ -75,7 +75,7 @@ public static T First(this Query query, IDbTransaction transaction = null, in public static async Task FirstAsync(this Query query, IDbTransaction transaction = null, int? timeout = null, CancellationToken cancellationToken = default) { - return await CreateQueryFactory(query).FirstAsync(query, transaction, timeout, cancellationToken); + return await CreateQueryFactory(query).FirstAsync(query, transaction, timeout, cancellationToken).ConfigureAwait(false); } public static dynamic First(this Query query, IDbTransaction transaction = null, int? timeout = null) @@ -85,7 +85,7 @@ public static dynamic First(this Query query, IDbTransaction transaction = null, public static async Task FirstAsync(this Query query, IDbTransaction transaction = null, int? timeout = null, CancellationToken cancellationToken = default) { - return await FirstAsync(query, transaction, timeout, cancellationToken); + return await FirstAsync(query, transaction, timeout, cancellationToken).ConfigureAwait(false); } public static PaginationResult Paginate(this Query query, int page, int perPage = 25, IDbTransaction transaction = null, int? timeout = null) @@ -99,7 +99,7 @@ public static async Task> PaginateAsync(this Query query, { var db = CreateQueryFactory(query); - return await db.PaginateAsync(query, page, perPage, transaction, timeout, cancellationToken); + return await db.PaginateAsync(query, page, perPage, transaction, timeout, cancellationToken).ConfigureAwait(false); } public static PaginationResult Paginate(this Query query, int page, int perPage = 25, IDbTransaction transaction = null, int? timeout = null) @@ -109,7 +109,7 @@ public static PaginationResult Paginate(this Query query, int page, int public static async Task> PaginateAsync(this Query query, int page, int perPage = 25, IDbTransaction transaction = null, int? timeout = null, CancellationToken cancellationToken = default) { - return await PaginateAsync(query, page, perPage, transaction, timeout, cancellationToken); + return await PaginateAsync(query, page, perPage, transaction, timeout, cancellationToken).ConfigureAwait(false); } public static void Chunk(this Query query, int chunkSize, Func, int, bool> func, IDbTransaction transaction = null, int? timeout = null) @@ -120,7 +120,7 @@ public static void Chunk(this Query query, int chunkSize, Func } public static async Task ChunkAsync(this Query query, int chunkSize, Func, int, bool> func, IDbTransaction transaction = null, int? timeout = null, CancellationToken cancellationToken = default) { - await CreateQueryFactory(query).ChunkAsync(query, chunkSize, func, transaction, timeout, cancellationToken); + await CreateQueryFactory(query).ChunkAsync(query, chunkSize, func, transaction, timeout, cancellationToken).ConfigureAwait(false); } public static void Chunk(this Query query, int chunkSize, Func, int, bool> func, IDbTransaction transaction = null, int? timeout = null) @@ -129,7 +129,7 @@ public static void Chunk(this Query query, int chunkSize, Func, int, bool> func, IDbTransaction transaction = null, int? timeout = null, CancellationToken cancellationToken = default) { - await ChunkAsync(query, chunkSize, func, transaction, timeout, cancellationToken); + await ChunkAsync(query, chunkSize, func, transaction, timeout, cancellationToken).ConfigureAwait(false); } public static void Chunk(this Query query, int chunkSize, Action, int> action, IDbTransaction transaction = null, int? timeout = null) @@ -141,7 +141,7 @@ public static void Chunk(this Query query, int chunkSize, Action(this Query query, int chunkSize, Action, int> action, IDbTransaction transaction = null, int? timeout = null, CancellationToken cancellationToken = default) { - await CreateQueryFactory(query).ChunkAsync(query, chunkSize, action, transaction, timeout, cancellationToken); + await CreateQueryFactory(query).ChunkAsync(query, chunkSize, action, transaction, timeout, cancellationToken).ConfigureAwait(false); } public static void Chunk(this Query query, int chunkSize, Action, int> action, IDbTransaction transaction = null, int? timeout = null) @@ -151,7 +151,7 @@ public static void Chunk(this Query query, int chunkSize, Action, int> action, IDbTransaction transaction = null, int? timeout = null, CancellationToken cancellationToken = default) { - await ChunkAsync(query, chunkSize, action, transaction, timeout, cancellationToken); + await ChunkAsync(query, chunkSize, action, transaction, timeout, cancellationToken).ConfigureAwait(false); } public static int Insert(this Query query, IEnumerable> values, IDbTransaction transaction = null, int? timeout = null) @@ -161,7 +161,7 @@ public static int Insert(this Query query, IEnumerable InsertAsync(this Query query, IEnumerable> values, IDbTransaction transaction = null, int? timeout = null, CancellationToken cancellationToken = default) { - return await CreateQueryFactory(query).ExecuteAsync(query.AsInsert(values), transaction, timeout, cancellationToken); + return await CreateQueryFactory(query).ExecuteAsync(query.AsInsert(values), transaction, timeout, cancellationToken).ConfigureAwait(false); } public static int Insert(this Query query, IEnumerable columns, IEnumerable> valuesCollection, IDbTransaction transaction = null, int? timeout = null) @@ -171,7 +171,7 @@ public static int Insert(this Query query, IEnumerable columns, IEnumera public static async Task InsertAsync(this Query query, IEnumerable columns, IEnumerable> valuesCollection, IDbTransaction transaction = null, int? timeout = null, CancellationToken cancellationToken = default) { - return await CreateQueryFactory(query).ExecuteAsync(query.AsInsert(columns, valuesCollection), transaction, timeout, cancellationToken); + return await CreateQueryFactory(query).ExecuteAsync(query.AsInsert(columns, valuesCollection), transaction, timeout, cancellationToken).ConfigureAwait(false); } public static int Insert(this Query query, IEnumerable columns, Query fromQuery, IDbTransaction transaction = null, int? timeout = null) @@ -181,7 +181,7 @@ public static int Insert(this Query query, IEnumerable columns, Query fr public static async Task InsertAsync(this Query query, IEnumerable columns, Query fromQuery, IDbTransaction transaction = null, int? timeout = null, CancellationToken cancellationToken = default) { - return await CreateQueryFactory(query).ExecuteAsync(query.AsInsert(columns, fromQuery), transaction, timeout, cancellationToken); + return await CreateQueryFactory(query).ExecuteAsync(query.AsInsert(columns, fromQuery), transaction, timeout, cancellationToken).ConfigureAwait(false); } public static int Insert(this Query query, object data, IDbTransaction transaction = null, int? timeout = null) @@ -191,7 +191,7 @@ public static int Insert(this Query query, object data, IDbTransaction transacti public static async Task InsertAsync(this Query query, object data, IDbTransaction transaction = null, int? timeout = null, CancellationToken cancellationToken = default) { - return await CreateQueryFactory(query).ExecuteAsync(query.AsInsert(data), transaction, timeout, cancellationToken); + return await CreateQueryFactory(query).ExecuteAsync(query.AsInsert(data), transaction, timeout, cancellationToken).ConfigureAwait(false); } public static T InsertGetId(this Query query, object data, IDbTransaction transaction = null, int? timeout = null) @@ -206,7 +206,7 @@ public static T InsertGetId(this Query query, object data, IDbTransaction tra public static async Task InsertGetIdAsync(this Query query, object data, IDbTransaction transaction = null, int? timeout = null, CancellationToken cancellationToken = default) { var row = await CreateQueryFactory(query) - .FirstAsync>(query.AsInsert(data, true), transaction, timeout, cancellationToken); + .FirstAsync>(query.AsInsert(data, true), transaction, timeout, cancellationToken).ConfigureAwait(false); return row.Id; } @@ -220,7 +220,7 @@ public static T InsertGetId(this Query query, IEnumerable InsertGetIdAsync(this Query query, IEnumerable> data, IDbTransaction transaction = null, int? timeout = null, CancellationToken cancellationToken = default) { - var row = await CreateQueryFactory(query).FirstAsync>(query.AsInsert(data, true), transaction, timeout, cancellationToken); + var row = await CreateQueryFactory(query).FirstAsync>(query.AsInsert(data, true), transaction, timeout, cancellationToken).ConfigureAwait(false); return row.Id; } @@ -232,7 +232,7 @@ public static int Update(this Query query, IEnumerable UpdateAsync(this Query query, IEnumerable> values, IDbTransaction transaction = null, int? timeout = null, CancellationToken cancellationToken = default) { - return await CreateQueryFactory(query).ExecuteAsync(query.AsUpdate(values), transaction, timeout, cancellationToken); + return await CreateQueryFactory(query).ExecuteAsync(query.AsUpdate(values), transaction, timeout, cancellationToken).ConfigureAwait(false); } public static int Update(this Query query, object data, IDbTransaction transaction = null, int? timeout = null) @@ -242,7 +242,7 @@ public static int Update(this Query query, object data, IDbTransaction transacti public static async Task UpdateAsync(this Query query, object data, IDbTransaction transaction = null, int? timeout = null, CancellationToken cancellationToken = default) { - return await CreateQueryFactory(query).ExecuteAsync(query.AsUpdate(data), transaction, timeout, cancellationToken); + return await CreateQueryFactory(query).ExecuteAsync(query.AsUpdate(data), transaction, timeout, cancellationToken).ConfigureAwait(false); } public static int Increment(this Query query, string column, int value = 1, IDbTransaction transaction = null, int? timeout = null) @@ -252,7 +252,7 @@ public static int Increment(this Query query, string column, int value = 1, IDbT public static async Task IncrementAsync(this Query query, string column, int value = 1, IDbTransaction transaction = null, int? timeout = null, CancellationToken cancellationToken = default) { - return await CreateQueryFactory(query).ExecuteAsync(query.AsIncrement(column, value), transaction, timeout, cancellationToken); + return await CreateQueryFactory(query).ExecuteAsync(query.AsIncrement(column, value), transaction, timeout, cancellationToken).ConfigureAwait(false); } public static int Decrement(this Query query, string column, int value = 1, IDbTransaction transaction = null, int? timeout = null) @@ -262,7 +262,7 @@ public static int Decrement(this Query query, string column, int value = 1, IDbT public static async Task DecrementAsync(this Query query, string column, int value = 1, IDbTransaction transaction = null, int? timeout = null, CancellationToken cancellationToken = default) { - return await CreateQueryFactory(query).ExecuteAsync(query.AsDecrement(column, value), transaction, timeout, cancellationToken); + return await CreateQueryFactory(query).ExecuteAsync(query.AsDecrement(column, value), transaction, timeout, cancellationToken).ConfigureAwait(false); } public static int Delete(this Query query, IDbTransaction transaction = null, int? timeout = null) @@ -272,7 +272,7 @@ public static int Delete(this Query query, IDbTransaction transaction = null, in public static async Task DeleteAsync(this Query query, IDbTransaction transaction = null, int? timeout = null, CancellationToken cancellationToken = default) { - return await CreateQueryFactory(query).ExecuteAsync(query.AsDelete(), transaction, timeout, cancellationToken); + return await CreateQueryFactory(query).ExecuteAsync(query.AsDelete(), transaction, timeout, cancellationToken).ConfigureAwait(false); } public static T Aggregate(this Query query, string aggregateOperation, string[] columns, IDbTransaction transaction = null, int? timeout = null) @@ -285,7 +285,7 @@ public static T Aggregate(this Query query, string aggregateOperation, string public static async Task AggregateAsync(this Query query, string aggregateOperation, string[] columns, IDbTransaction transaction = null, int? timeout = null, CancellationToken cancellationToken = default) { var db = CreateQueryFactory(query); - return await db.ExecuteScalarAsync(query.AsAggregate(aggregateOperation, columns), transaction, timeout, cancellationToken); + return await db.ExecuteScalarAsync(query.AsAggregate(aggregateOperation, columns), transaction, timeout, cancellationToken).ConfigureAwait(false); } public static T Count(this Query query, string[] columns = null, IDbTransaction transaction = null, int? timeout = null) @@ -299,7 +299,7 @@ public static async Task CountAsync(this Query query, string[] columns = n { var db = CreateQueryFactory(query); - return await db.ExecuteScalarAsync(query.AsCount(columns), transaction, timeout, cancellationToken); + return await db.ExecuteScalarAsync(query.AsCount(columns), transaction, timeout, cancellationToken).ConfigureAwait(false); } public static T Average(this Query query, string column, IDbTransaction transaction = null, int? timeout = null) @@ -309,7 +309,7 @@ public static T Average(this Query query, string column, IDbTransaction trans public static async Task AverageAsync(this Query query, string column, IDbTransaction transaction = null, int? timeout = null, CancellationToken cancellationToken = default) { - return await query.AggregateAsync("avg", new[] { column }, transaction, timeout, cancellationToken); + return await query.AggregateAsync("avg", new[] { column }, transaction, timeout, cancellationToken).ConfigureAwait(false); } public static T Sum(this Query query, string column, IDbTransaction transaction = null, int? timeout = null) @@ -319,7 +319,7 @@ public static T Sum(this Query query, string column, IDbTransaction transacti public static async Task SumAsync(this Query query, string column, IDbTransaction transaction = null, int? timeout = null, CancellationToken cancellationToken = default) { - return await query.AggregateAsync("sum", new[] { column }, transaction, timeout, cancellationToken); + return await query.AggregateAsync("sum", new[] { column }, transaction, timeout, cancellationToken).ConfigureAwait(false); } public static T Min(this Query query, string column, IDbTransaction transaction = null, int? timeout = null) @@ -329,7 +329,7 @@ public static T Min(this Query query, string column, IDbTransaction transacti public static async Task MinAsync(this Query query, string column, IDbTransaction transaction = null, int? timeout = null, CancellationToken cancellationToken = default) { - return await query.AggregateAsync("min", new[] { column }, transaction, timeout, cancellationToken); + return await query.AggregateAsync("min", new[] { column }, transaction, timeout, cancellationToken).ConfigureAwait(false); } public static T Max(this Query query, string column, IDbTransaction transaction = null, int? timeout = null) @@ -339,7 +339,7 @@ public static T Max(this Query query, string column, IDbTransaction transacti public static async Task MaxAsync(this Query query, string column, IDbTransaction transaction = null, int? timeout = null, CancellationToken cancellationToken = default) { - return await query.AggregateAsync("max", new[] { column }, transaction, timeout, cancellationToken); + return await query.AggregateAsync("max", new[] { column }, transaction, timeout, cancellationToken).ConfigureAwait(false); } internal static XQuery CastToXQuery(Query query, string method = null) diff --git a/SqlKata.Execution/QueryFactory.cs b/SqlKata.Execution/QueryFactory.cs index 5ff399aa..750e814b 100644 --- a/SqlKata.Execution/QueryFactory.cs +++ b/SqlKata.Execution/QueryFactory.cs @@ -98,9 +98,9 @@ public async Task> GetAsync(Query query, IDbTransaction transa commandTimeout: timeout ?? this.QueryTimeout, cancellationToken: cancellationToken); - var result = (await this.Connection.QueryAsync(commandDefinition)).ToList(); + var result = (await this.Connection.QueryAsync(commandDefinition).ConfigureAwait(false)).ToList(); - result = (await handleIncludesAsync(query, result, cancellationToken)).ToList(); + result = (await handleIncludesAsync(query, result, cancellationToken).ConfigureAwait(false)).ToList(); return result; } @@ -129,7 +129,7 @@ public async Task>> GetDictionaryAsync(Q commandTimeout: timeout ?? this.QueryTimeout, cancellationToken: cancellationToken); - var result = await this.Connection.QueryAsync(commandDefinition); + var result = await this.Connection.QueryAsync(commandDefinition).ConfigureAwait(false); return result.Cast>(); } @@ -141,7 +141,7 @@ public IEnumerable Get(Query query, IDbTransaction transaction = null, public async Task> GetAsync(Query query, IDbTransaction transaction = null, int? timeout = null, CancellationToken cancellationToken = default) { - return await GetAsync(query, transaction, timeout, cancellationToken); + return await GetAsync(query, transaction, timeout, cancellationToken).ConfigureAwait(false); } public T FirstOrDefault(Query query, IDbTransaction transaction = null, int? timeout = null) @@ -153,7 +153,7 @@ public T FirstOrDefault(Query query, IDbTransaction transaction = null, int? public async Task FirstOrDefaultAsync(Query query, IDbTransaction transaction = null, int? timeout = null, CancellationToken cancellationToken = default) { - var list = await GetAsync(query.Limit(1), transaction, timeout, cancellationToken); + var list = await GetAsync(query.Limit(1), transaction, timeout, cancellationToken).ConfigureAwait(false); return list.ElementAtOrDefault(0); } @@ -165,7 +165,7 @@ public dynamic FirstOrDefault(Query query, IDbTransaction transaction = null, in public async Task FirstOrDefaultAsync(Query query, IDbTransaction transaction = null, int? timeout = null, CancellationToken cancellationToken = default) { - return await FirstOrDefaultAsync(query, transaction, timeout, cancellationToken); + return await FirstOrDefaultAsync(query, transaction, timeout, cancellationToken).ConfigureAwait(false); } public T First(Query query, IDbTransaction transaction = null, int? timeout = null) @@ -182,7 +182,7 @@ public T First(Query query, IDbTransaction transaction = null, int? timeout = public async Task FirstAsync(Query query, IDbTransaction transaction = null, int? timeout = null, CancellationToken cancellationToken = default) { - var item = await FirstOrDefaultAsync(query, transaction, timeout, cancellationToken); + var item = await FirstOrDefaultAsync(query, transaction, timeout, cancellationToken).ConfigureAwait(false); if (item == null) { @@ -199,7 +199,7 @@ public dynamic First(Query query, IDbTransaction transaction = null, int? timeou public async Task FirstAsync(Query query, IDbTransaction transaction = null, int? timeout = null, CancellationToken cancellationToken = default) { - return await FirstAsync(query, transaction, timeout, cancellationToken); + return await FirstAsync(query, transaction, timeout, cancellationToken).ConfigureAwait(false); } public int Execute( @@ -233,7 +233,7 @@ public async Task ExecuteAsync( commandTimeout: timeout ?? this.QueryTimeout, cancellationToken: cancellationToken); - return await this.Connection.ExecuteAsync(commandDefinition); + return await this.Connection.ExecuteAsync(commandDefinition).ConfigureAwait(false); } public T ExecuteScalar(Query query, IDbTransaction transaction = null, int? timeout = null) @@ -263,7 +263,7 @@ public async Task ExecuteScalarAsync( commandTimeout: timeout ?? this.QueryTimeout, cancellationToken: cancellationToken); - return await this.Connection.ExecuteScalarAsync(commandDefinition); + return await this.Connection.ExecuteScalarAsync(commandDefinition).ConfigureAwait(false); } public SqlMapper.GridReader GetMultiple( @@ -296,7 +296,7 @@ public SqlMapper.GridReader GetMultiple( commandTimeout: timeout ?? this.QueryTimeout, cancellationToken: cancellationToken); - return await this.Connection.QueryMultipleAsync(commandDefinition); + return await this.Connection.QueryMultipleAsync(commandDefinition).ConfigureAwait(false); } public IEnumerable> Get( @@ -333,7 +333,7 @@ public async Task>> GetAsync( transaction, timeout, cancellationToken - ); + ).ConfigureAwait(false); var list = new List>(); @@ -367,7 +367,7 @@ public async Task ExistsAsync(Query query, IDbTransaction transaction = nu .SelectRaw("1 as [Exists]") .Limit(1); - var rows = await GetAsync(clone, transaction, timeout, cancellationToken); + var rows = await GetAsync(clone, transaction, timeout, cancellationToken).ConfigureAwait(false); return rows.Any(); } @@ -397,7 +397,7 @@ public async Task AggregateAsync( transaction, timeout, cancellationToken - ); + ).ConfigureAwait(false); } public T Count(Query query, string[] columns = null, IDbTransaction transaction = null, int? timeout = null) @@ -411,7 +411,7 @@ public T Count(Query query, string[] columns = null, IDbTransaction transacti public async Task CountAsync(Query query, string[] columns = null, IDbTransaction transaction = null, int? timeout = null, CancellationToken cancellationToken = default) { - return await this.ExecuteScalarAsync(query.AsCount(columns), transaction, timeout, cancellationToken); + return await this.ExecuteScalarAsync(query.AsCount(columns), transaction, timeout, cancellationToken).ConfigureAwait(false); } public T Average(Query query, string column, IDbTransaction transaction = null, int? timeout = null) @@ -421,7 +421,7 @@ public T Average(Query query, string column, IDbTransaction transaction = nul public async Task AverageAsync(Query query, string column, CancellationToken cancellationToken = default) { - return await this.AggregateAsync(query, "avg", new[] { column }, cancellationToken: cancellationToken); + return await this.AggregateAsync(query, "avg", new[] { column }, cancellationToken: cancellationToken).ConfigureAwait(false); } public T Sum(Query query, string column) @@ -431,7 +431,7 @@ public T Sum(Query query, string column) public async Task SumAsync(Query query, string column, CancellationToken cancellationToken = default) { - return await this.AggregateAsync(query, "sum", new[] { column }, cancellationToken: cancellationToken); + return await this.AggregateAsync(query, "sum", new[] { column }, cancellationToken: cancellationToken).ConfigureAwait(false); } public T Min(Query query, string column) @@ -441,7 +441,7 @@ public T Min(Query query, string column) public async Task MinAsync(Query query, string column, CancellationToken cancellationToken = default) { - return await this.AggregateAsync(query, "min", new[] { column }, cancellationToken: cancellationToken); + return await this.AggregateAsync(query, "min", new[] { column }, cancellationToken: cancellationToken).ConfigureAwait(false); } public T Max(Query query, string column) @@ -451,7 +451,7 @@ public T Max(Query query, string column) public async Task MaxAsync(Query query, string column, CancellationToken cancellationToken = default) { - return await this.AggregateAsync(query, "max", new[] { column }, cancellationToken: cancellationToken); + return await this.AggregateAsync(query, "max", new[] { column }, cancellationToken: cancellationToken).ConfigureAwait(false); } public PaginationResult Paginate(Query query, int page, int perPage = 25, IDbTransaction transaction = null, int? timeout = null) @@ -501,13 +501,13 @@ public async Task> PaginateAsync(Query query, int page, i throw new ArgumentException("PerPage param should be greater than or equal to 1", nameof(perPage)); } - var count = await CountAsync(query.Clone(), null, transaction, timeout, cancellationToken); + var count = await CountAsync(query.Clone(), null, transaction, timeout, cancellationToken).ConfigureAwait(false); IEnumerable list; if (count > 0) { - list = await GetAsync(query.Clone().ForPage(page, perPage), transaction, timeout, cancellationToken); + list = await GetAsync(query.Clone().ForPage(page, perPage), transaction, timeout, cancellationToken).ConfigureAwait(false); } else { @@ -557,7 +557,7 @@ public async Task ChunkAsync( CancellationToken cancellationToken = default ) { - var result = await this.PaginateAsync(query, 1, chunkSize, transaction, cancellationToken: cancellationToken); + var result = await this.PaginateAsync(query, 1, chunkSize, transaction, cancellationToken: cancellationToken).ConfigureAwait(false); if (!func(result.List, 1)) { @@ -596,7 +596,7 @@ public async Task ChunkAsync( CancellationToken cancellationToken = default ) { - var result = await this.PaginateAsync(query, 1, chunkSize, transaction, timeout, cancellationToken); + var result = await this.PaginateAsync(query, 1, chunkSize, transaction, timeout, cancellationToken).ConfigureAwait(false); action(result.List, 1); @@ -626,7 +626,7 @@ public async Task> SelectAsync(string sql, object param = null commandTimeout: timeout ?? this.QueryTimeout, cancellationToken: cancellationToken); - return await this.Connection.QueryAsync(commandDefinition); + return await this.Connection.QueryAsync(commandDefinition).ConfigureAwait(false); } public IEnumerable Select(string sql, object param = null, IDbTransaction transaction = null, int? timeout = null) @@ -636,7 +636,7 @@ public IEnumerable Select(string sql, object param = null, IDbTransacti public async Task> SelectAsync(string sql, object param = null, IDbTransaction transaction = null, int? timeout = null, CancellationToken cancellationToken = default) { - return await this.SelectAsync(sql, param, transaction, timeout, cancellationToken); + return await this.SelectAsync(sql, param, transaction, timeout, cancellationToken).ConfigureAwait(false); } public int Statement(string sql, object param = null, IDbTransaction transaction = null, int? timeout = null) @@ -652,7 +652,7 @@ public async Task StatementAsync(string sql, object param = null, IDbTransa transaction: transaction, commandTimeout: timeout ?? this.QueryTimeout, cancellationToken: cancellationToken); - return await this.Connection.ExecuteAsync(commandDefinition); + return await this.Connection.ExecuteAsync(commandDefinition).ConfigureAwait(false); } private static IEnumerable handleIncludes(Query query, IEnumerable result) @@ -807,7 +807,7 @@ private static async Task> handleIncludesAsync(Query query, IE continue; } - var children = (await include.Query.WhereIn(include.ForeignKey, localIds).GetAsync(cancellationToken: cancellationToken)) + var children = (await include.Query.WhereIn(include.ForeignKey, localIds).GetAsync(cancellationToken: cancellationToken).ConfigureAwait(false)) .Cast>() .Select(x => new Dictionary(x, StringComparer.OrdinalIgnoreCase)) .GroupBy(x => x[include.ForeignKey].ToString()) @@ -836,7 +836,7 @@ private static async Task> handleIncludesAsync(Query query, IE continue; } - var related = (await include.Query.WhereIn(include.LocalKey, foreignIds).GetAsync(cancellationToken: cancellationToken)) + var related = (await include.Query.WhereIn(include.LocalKey, foreignIds).GetAsync(cancellationToken: cancellationToken).ConfigureAwait(false)) .Cast>() .Select(x => new Dictionary(x, StringComparer.OrdinalIgnoreCase)) .ToDictionary(x => x[include.LocalKey].ToString());