Exemplo n.º 1
0
 public QueryWhere(LambdaExpression expression, QueryOperator queryOperator, INetSqlQueryable subQueryable)
 {
     Type             = QueryWhereType.SubQuery;
     SubQueryColumn   = expression;
     SubQueryOperator = queryOperator;
     SubQueryable     = subQueryable;
 }
Exemplo n.º 2
0
        protected async Task <List <TEntity> > PaginationAsync(Paging paging = null, INetSqlQueryable <TEntity> query = null, IDbTransaction transaction = null)
        {
            if (paging == null)
            {
                paging = new Paging();
            }

            if (query == null)
            {
                query = Db.Find();
            }

            query.Limit(paging.Skip, paging.Size);

            //排序
            foreach (var sort in paging.OrderBy)
            {
                query.OrderBy(sort);
            }

            var count = query.Count();
            var list  = query.ToList();

            paging.TotalCount = await count;
            return(await list);
        }
 public static INetSqlQueryable <WorkflowDefinitionVersionEntity> WithVersion(
     this INetSqlQueryable <WorkflowDefinitionVersionEntity> query,
     VersionOptions version)
 {
     return(query.WhereIf(version.IsDraft, a => a.IsPublished == false)
            .WhereIf(version.IsLatest, a => a.IsLatest == true)
            .WhereIf(version.IsPublished, a => a.IsPublished == true)
            .WhereIf(version.IsLatestOrPublished, a => a.IsPublished == true || a.IsLatest == true)
            .WhereIf(version.Version > 0, a => a.Version == version.Version)
            .OrderByDescending(a => a.Version));
 }
Exemplo n.º 4
0
 public void SetWhere(LambdaExpression expression, QueryOperator queryOperator, INetSqlQueryable subQueryable)
 {
     if (subQueryable != null)
     {
         Where.Add(new QueryWhere(expression, queryOperator, subQueryable));
     }
 }
Exemplo n.º 5
0
 public INetSqlQueryable <TEntity, TEntity2, TEntity3> Where <TKey>(Expression <Func <TEntity, TEntity2, TEntity3, TKey> > key, QueryOperator queryOperator, INetSqlQueryable queryable)
 {
     QueryBody.SetWhere(key, queryOperator, queryable);
     return(this);
 }