コード例 #1
0
        /// <summary>
        /// 分页查询 + 条件查询 + 排序
        /// </summary>
        /// <param name="pager">分页对象</param>
        /// <param name="condition">过滤条件</param>
        /// <returns></returns>
        public PagerEntity <DictionaryDetailEntity> QueryDictionaryDetailByPagers(PagerInfo pager, List <SearchCondition> condition = null)
        {
            var entity = CurrentDbSet.Where(it => true);

            //动态增加过滤条件
            if (condition != null && condition.Count > 0)
            {
                var parser = new LambdaParser <DictionaryDetailEntity>();
                entity = entity.Where(parser.ParserConditions(condition));
            }

            var total = entity.Count();

            entity = pager.Sort == "ASC" ? entity.OrderBy(pager.SortFiled) : entity.OrderByDescending(pager.SortFiled);

            entity = entity.Skip(pager.PageSize * (pager.PageIndex - 1))
                     .Take(pager.PageSize);
            return(new PagerEntity <DictionaryDetailEntity>
            {
                Entity = entity.ToList(),
                Total = total
            });
        }