コード例 #1
0
        /// <summary>
        /// 分页集合
        /// </summary>
        /// <param name="expression"></param>
        /// <param name="sorts"></param>
        /// <param name="page"></param>
        /// <param name="resultsPerPage"></param>
        /// <param name="isTotal"></param>
        /// <param name="total"></param>
        /// <returns></returns>
        public IEnumerable <T> GetPage(Expression <Func <T, bool> > expression, Sorting <T>[] sorts, int page, int resultsPerPage, bool isTotal, ref int total)
        {
            if (sorts == null || sorts.Count() == 0)
            {
                throw new ArgumentNullException("排序字段不能为空");
            }
            var predicates = expression.ToPredicateGroup();

            if (isTotal)
            {
                total = _context.Count <T>(predicates);
            }
            return(_context.GetPage <T>(predicates, sorts.ToSortable(), page, resultsPerPage));
        }