/// <summary> /// 两表分页查询数据(指定列) /// </summary> /// <param name="where"></param> /// <param name="pageSet"></param> /// <param name="obj"></param> /// <param name="orderBy"></param> /// <param name="isDesc"></param> /// <param name="isPageNavStr"></param> /// <returns></returns> public PageList <TResult> GetPageList <T, TResult, T2>(Expression <Func <T, T2, object[]> > express, Expression <Func <TResult, bool> > where, PageSet pageSet, Expression <Func <T, T2, TResult> > obj, Expression <Func <TResult, object> > orderBy, bool isDesc = false, bool isPageNavStr = false) where T : class, new() { if (pageSet == null) { pageSet = new PageSet() { PageIndex = 1, PageSize = 100000 }; } OrderByType orderByType = OrderByType.Asc; if (isDesc) { orderByType = OrderByType.Desc; } int totalCount = 0; var list = SqlSugarDB.Queryable <T, T2>(express).Select(obj).MergeTable().Where(where).OrderBy(orderBy, orderByType).ToPageList(pageSet.PageIndex, pageSet.PageSize, ref totalCount); PageList <TResult> result = new PageList <TResult>(); result.PageIndex = pageSet.PageIndex; result.RecordCount = totalCount; result.SetPageCount(pageSet.PageSize); if (isPageNavStr) { result.SetPageNavStr(); } result.DataList = list; return(result); }
/// <summary> /// 分页查询数据(指定列,多排序条件) /// </summary> /// <typeparam name="TResult"></typeparam> /// <param name="where"></param> /// <param name="pageSet"></param> /// <param name="obj"></param> /// <param name="orderBy"></param> /// <param name="isPageNavStr"></param> /// <returns></returns> public PageList <TResult> GetPageList <T, TResult>(Expression <Func <T, bool> > where, PageSet pageSet, Expression <Func <T, TResult> > obj, string orderBy, bool isPageNavStr = false) where T : class, new() { if (pageSet == null) { pageSet = new PageSet() { PageIndex = 1, PageSize = 100000 }; } int totalCount = 0; var list = SqlSugarDB.Queryable <T>().Where(where).OrderBy(orderBy).Select(obj).ToPageList(pageSet.PageIndex, pageSet.PageSize, ref totalCount); PageList <TResult> result = new PageList <TResult>(); result.PageIndex = pageSet.PageIndex; result.RecordCount = totalCount; result.SetPageCount(pageSet.PageSize); if (isPageNavStr) { result.SetPageNavStr(); } result.DataList = list; return(result); }
public PageList <T> TranFromList(List <T> data, PageSet pageset) { this.PageIndex = pageset.PageIndex; this.RecordCount = data.Count; //this.SetPageCount(); this.DataList = data.Skip((pageset.PageIndex - 1) * pageset.PageSize).Take(pageset.PageSize).ToList <T>(); return(this); }