mirror of
https://gitee.com/dotnetchina/SqlSugar.git
synced 2025-04-24 18:04:52 +08:00
Update nav dto async
This commit is contained in:
parent
4dcb0a2b89
commit
5989c02d10
@ -103,36 +103,7 @@ namespace SqlSugar
|
|||||||
|
|
||||||
internal static async Task<List<TResult>> GetListAsync<T, TResult>(Expression<Func<T, TResult>> expression, QueryableProvider<T> queryableProvider)
|
internal static async Task<List<TResult>> GetListAsync<T, TResult>(Expression<Func<T, TResult>> expression, QueryableProvider<T> queryableProvider)
|
||||||
{
|
{
|
||||||
List<TResult> result = new List<TResult>();
|
return await Task.Run(()=> { return GetList(expression,queryableProvider); });
|
||||||
var isSqlFunc = IsSqlFunc(expression, queryableProvider);
|
|
||||||
if (isSqlFunc && isGroup(expression, queryableProvider))
|
|
||||||
{
|
|
||||||
var sqlfuncQueryable = queryableProvider.Clone();
|
|
||||||
sqlfuncQueryable.QueryBuilder.Includes = null;
|
|
||||||
result =await sqlfuncQueryable
|
|
||||||
.Select(expression)
|
|
||||||
.ToListAsync();
|
|
||||||
var includeQueryable = queryableProvider.Clone();
|
|
||||||
includeQueryable.Select(GetGroupSelect(typeof(T), queryableProvider.Context, queryableProvider.QueryBuilder));
|
|
||||||
includeQueryable.QueryBuilder.NoCheckInclude = true;
|
|
||||||
MegerList(result,await includeQueryable.ToListAsync(), sqlfuncQueryable.Context);
|
|
||||||
}
|
|
||||||
else if (isSqlFunc)
|
|
||||||
{
|
|
||||||
var sqlfuncQueryable = queryableProvider.Clone();
|
|
||||||
sqlfuncQueryable.QueryBuilder.Includes = null;
|
|
||||||
result =await sqlfuncQueryable
|
|
||||||
.Select(expression)
|
|
||||||
.ToListAsync();
|
|
||||||
var includeList =await queryableProvider.Clone().ToListAsync();
|
|
||||||
MegerList(result, includeList, sqlfuncQueryable.Context);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
var list =await queryableProvider.ToListAsync();
|
|
||||||
result = list.Select(expression.Compile()).ToList();
|
|
||||||
}
|
|
||||||
return result;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private static string GetGroupSelect(Type type,SqlSugarProvider context,QueryBuilder queryBuilder)
|
private static string GetGroupSelect(Type type,SqlSugarProvider context,QueryBuilder queryBuilder)
|
||||||
|
Loading…
Reference in New Issue
Block a user