mirror of
https://gitee.com/dotnetchina/SqlSugar.git
synced 2025-06-28 13:34:32 +08:00
Update Queryable
This commit is contained in:
parent
8589e045f5
commit
36457277d0
@ -37,7 +37,7 @@ namespace SqlSugar
|
|||||||
if (list == null) return default(T);
|
if (list == null) return default(T);
|
||||||
else return list.SingleOrDefault();
|
else return list.SingleOrDefault();
|
||||||
}
|
}
|
||||||
public async Task<T> SingleAsync()
|
public virtual async Task<T> SingleAsync()
|
||||||
{
|
{
|
||||||
if (QueryBuilder.OrderByValue.IsNullOrEmpty())
|
if (QueryBuilder.OrderByValue.IsNullOrEmpty())
|
||||||
{
|
{
|
||||||
@ -67,19 +67,19 @@ namespace SqlSugar
|
|||||||
return result.SingleOrDefault();
|
return result.SingleOrDefault();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
public async Task<T> SingleAsync(Expression<Func<T, bool>> expression)
|
public virtual async Task<T> SingleAsync(Expression<Func<T, bool>> expression)
|
||||||
{
|
{
|
||||||
_Where(expression);
|
_Where(expression);
|
||||||
var result = await SingleAsync();
|
var result = await SingleAsync();
|
||||||
this.QueryBuilder.WhereInfos.Remove(this.QueryBuilder.WhereInfos.Last());
|
this.QueryBuilder.WhereInfos.Remove(this.QueryBuilder.WhereInfos.Last());
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
public Task<T> FirstAsync(CancellationToken token)
|
public virtual Task<T> FirstAsync(CancellationToken token)
|
||||||
{
|
{
|
||||||
this.Context.Ado.CancellationToken = token;
|
this.Context.Ado.CancellationToken = token;
|
||||||
return FirstAsync();
|
return FirstAsync();
|
||||||
}
|
}
|
||||||
public async Task<T> FirstAsync()
|
public virtual async Task<T> FirstAsync()
|
||||||
{
|
{
|
||||||
if (QueryBuilder.OrderByValue.IsNullOrEmpty())
|
if (QueryBuilder.OrderByValue.IsNullOrEmpty())
|
||||||
{
|
{
|
||||||
@ -102,12 +102,12 @@ namespace SqlSugar
|
|||||||
return default(T);
|
return default(T);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
public Task<T> FirstAsync(Expression<Func<T, bool>> expression, CancellationToken token)
|
public virtual Task<T> FirstAsync(Expression<Func<T, bool>> expression, CancellationToken token)
|
||||||
{
|
{
|
||||||
this.Context.Ado.CancellationToken = token;
|
this.Context.Ado.CancellationToken = token;
|
||||||
return FirstAsync(expression);
|
return FirstAsync(expression);
|
||||||
}
|
}
|
||||||
public async Task<T> FirstAsync(Expression<Func<T, bool>> expression)
|
public virtual async Task<T> FirstAsync(Expression<Func<T, bool>> expression)
|
||||||
{
|
{
|
||||||
_Where(expression);
|
_Where(expression);
|
||||||
var result = await FirstAsync();
|
var result = await FirstAsync();
|
||||||
@ -115,7 +115,7 @@ namespace SqlSugar
|
|||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
public async Task<bool> AnyAsync(Expression<Func<T, bool>> expression)
|
public virtual async Task<bool> AnyAsync(Expression<Func<T, bool>> expression)
|
||||||
{
|
{
|
||||||
_Where(expression);
|
_Where(expression);
|
||||||
var result = await AnyAsync();
|
var result = await AnyAsync();
|
||||||
@ -123,23 +123,23 @@ namespace SqlSugar
|
|||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
public Task<bool> AnyAsync(Expression<Func<T, bool>> expression, CancellationToken token)
|
public virtual Task<bool> AnyAsync(Expression<Func<T, bool>> expression, CancellationToken token)
|
||||||
{
|
{
|
||||||
this.Context.Ado.CancellationToken = token;
|
this.Context.Ado.CancellationToken = token;
|
||||||
return AnyAsync(expression);
|
return AnyAsync(expression);
|
||||||
}
|
}
|
||||||
|
|
||||||
public async Task<bool> AnyAsync()
|
public virtual async Task<bool> AnyAsync()
|
||||||
{
|
{
|
||||||
return (await this.Clone().Take(1).Select("1").ToListAsync()).Count() > 0; ;
|
return (await this.Clone().Take(1).Select("1").ToListAsync()).Count() > 0; ;
|
||||||
}
|
}
|
||||||
|
|
||||||
public Task<int> CountAsync(CancellationToken token)
|
public virtual Task<int> CountAsync(CancellationToken token)
|
||||||
{
|
{
|
||||||
this.Context.Ado.CancellationToken = token;
|
this.Context.Ado.CancellationToken = token;
|
||||||
return CountAsync();
|
return CountAsync();
|
||||||
}
|
}
|
||||||
public async Task<int> CountAsync()
|
public virtual async Task<int> CountAsync()
|
||||||
{
|
{
|
||||||
if (this.QueryBuilder.Skip == null &&
|
if (this.QueryBuilder.Skip == null &&
|
||||||
this.QueryBuilder.Take == null &&
|
this.QueryBuilder.Take == null &&
|
||||||
@ -181,7 +181,7 @@ namespace SqlSugar
|
|||||||
return CountAsync(expression);
|
return CountAsync(expression);
|
||||||
}
|
}
|
||||||
|
|
||||||
public async Task<TResult> MaxAsync<TResult>(string maxField)
|
public virtual async Task<TResult> MaxAsync<TResult>(string maxField)
|
||||||
{
|
{
|
||||||
this.Select(string.Format(QueryBuilder.MaxTemplate, maxField));
|
this.Select(string.Format(QueryBuilder.MaxTemplate, maxField));
|
||||||
var list = await this._ToListAsync<TResult>();
|
var list = await this._ToListAsync<TResult>();
|
||||||
@ -189,55 +189,55 @@ namespace SqlSugar
|
|||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
public Task<TResult> MaxAsync<TResult>(string maxField, CancellationToken token)
|
public virtual Task<TResult> MaxAsync<TResult>(string maxField, CancellationToken token)
|
||||||
{
|
{
|
||||||
this.Context.Ado.CancellationToken= token;
|
this.Context.Ado.CancellationToken= token;
|
||||||
return MaxAsync<TResult>(maxField);
|
return MaxAsync<TResult>(maxField);
|
||||||
}
|
}
|
||||||
|
|
||||||
public Task<TResult> MaxAsync<TResult>(Expression<Func<T, TResult>> expression)
|
public virtual Task<TResult> MaxAsync<TResult>(Expression<Func<T, TResult>> expression)
|
||||||
{
|
{
|
||||||
return _MaxAsync<TResult>(expression);
|
return _MaxAsync<TResult>(expression);
|
||||||
}
|
}
|
||||||
|
|
||||||
public Task<TResult> MaxAsync<TResult>(Expression<Func<T, TResult>> expression, CancellationToken token)
|
public virtual Task<TResult> MaxAsync<TResult>(Expression<Func<T, TResult>> expression, CancellationToken token)
|
||||||
{
|
{
|
||||||
this.Context.Ado.CancellationToken = token;
|
this.Context.Ado.CancellationToken = token;
|
||||||
return MaxAsync(expression);
|
return MaxAsync(expression);
|
||||||
}
|
}
|
||||||
|
|
||||||
public async Task<TResult> MinAsync<TResult>(string minField)
|
public virtual async Task<TResult> MinAsync<TResult>(string minField)
|
||||||
{
|
{
|
||||||
this.Select(string.Format(QueryBuilder.MinTemplate, minField));
|
this.Select(string.Format(QueryBuilder.MinTemplate, minField));
|
||||||
var list = await this._ToListAsync<TResult>();
|
var list = await this._ToListAsync<TResult>();
|
||||||
var result = list.SingleOrDefault();
|
var result = list.SingleOrDefault();
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
public Task<TResult> MinAsync<TResult>(Expression<Func<T, TResult>> expression)
|
public virtual Task<TResult> MinAsync<TResult>(Expression<Func<T, TResult>> expression)
|
||||||
{
|
{
|
||||||
return _MinAsync<TResult>(expression);
|
return _MinAsync<TResult>(expression);
|
||||||
}
|
}
|
||||||
|
|
||||||
public async Task<TResult> SumAsync<TResult>(string sumField)
|
public virtual async Task<TResult> SumAsync<TResult>(string sumField)
|
||||||
{
|
{
|
||||||
this.Select(string.Format(QueryBuilder.SumTemplate, sumField));
|
this.Select(string.Format(QueryBuilder.SumTemplate, sumField));
|
||||||
var list = await this._ToListAsync<TResult>();
|
var list = await this._ToListAsync<TResult>();
|
||||||
var result = list.SingleOrDefault();
|
var result = list.SingleOrDefault();
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
public Task<TResult> SumAsync<TResult>(Expression<Func<T, TResult>> expression)
|
public virtual Task<TResult> SumAsync<TResult>(Expression<Func<T, TResult>> expression)
|
||||||
{
|
{
|
||||||
return _SumAsync<TResult>(expression);
|
return _SumAsync<TResult>(expression);
|
||||||
}
|
}
|
||||||
|
|
||||||
public async Task<TResult> AvgAsync<TResult>(string avgField)
|
public virtual async Task<TResult> AvgAsync<TResult>(string avgField)
|
||||||
{
|
{
|
||||||
this.Select(string.Format(QueryBuilder.AvgTemplate, avgField));
|
this.Select(string.Format(QueryBuilder.AvgTemplate, avgField));
|
||||||
var list = await this._ToListAsync<TResult>();
|
var list = await this._ToListAsync<TResult>();
|
||||||
var result = list.SingleOrDefault();
|
var result = list.SingleOrDefault();
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
public Task<TResult> AvgAsync<TResult>(Expression<Func<T, TResult>> expression)
|
public virtual Task<TResult> AvgAsync<TResult>(Expression<Func<T, TResult>> expression)
|
||||||
{
|
{
|
||||||
return _AvgAsync<TResult>(expression);
|
return _AvgAsync<TResult>(expression);
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user