Exemple #1
0
        /// <summary>
        /// EF lanbda 分页
        /// </summary>
        /// <param name="select">需要查询的字段</param>
        /// <param name="where">查询条件</param>
        /// <param name="OrderBy">排序</param>
        /// <param name="pageIndex">当前页</param>
        /// <param name="pageSize">每页显示的条数</param>
        /// <param name="isAsc">升序还是降序</param>
        /// <param name="Total">查询总条数</param>
        /// <returns></returns>
        public static List <dynamic> getPageDate(Func <T, dynamic> select, Func <T, bool> where, Func <T, dynamic> OrderBy, int pageIndex, int pageSize, bool isAsc, out int Total)
        {
            EFDB db = new EFDB();

            Total = db.Set <T>().Where(where).Count();
            if (isAsc)
            {
                return((db.Set <T>().Where(where).OrderBy(OrderBy).Select(select).Skip((pageIndex - 1) * pageSize).Take(pageSize)).ToList());
            }
            else
            {
                return((db.Set <T>().Where(where).OrderByDescending(OrderBy).Select(select).Skip((pageIndex - 1) * pageSize).Take(pageSize)).ToList());
            }
        }