예제 #1
0
        static IQueryable <TUserAuth> SortAndPage(IRavenQueryable <TUserAuth> q, string orderBy, int?skip, int?take)
        {
            var qEnum = q.AsQueryable();

            if (!string.IsNullOrEmpty(orderBy))
            {
                orderBy = AuthRepositoryUtils.ParseOrderBy(orderBy, out var desc);
                qEnum   = desc
                    ? q.OrderByDescending(orderBy)
                    : q.OrderBy(orderBy);
            }

            if (skip != null)
            {
                qEnum = qEnum.Skip(skip.Value);
            }
            if (take != null)
            {
                qEnum = qEnum.Take(take.Value);
            }
            return(qEnum);
        }
예제 #2
0
 public static IRavenQueryable <T> OrderByMultipleItems <T>(this IRavenQueryable <T> query, IList <Order <string> > orderByExpressions)
 {
     return((IRavenQueryable <T>)query.AsQueryable().OrderByMultipleItems(orderByExpressions));
 }
예제 #3
0
 public static IRavenQueryable <T> ApplyDefaultPaging <T>(this IRavenQueryable <T> queryable, int?skip, int?take)
 {
     return((IRavenQueryable <T>)queryable.AsQueryable().ApplyDefaultPaging(skip, take));
 }