예제 #1
0
        /// <summary>
        /// 获得分页列表,无论是否是缓存实体都从数据库直接拿取数据
        /// </summary>
        /// <param name="pPageIndex">页数</param>
        /// <param name="pPageSize">每页列表</param>
        /// <param name="pOrderBy">排序</param>
        /// <param name="pSortExpression">排序字段</param>
        /// <param name="pRecordCount">列表行数</param>
        /// <returns>数据分页</returns>
        public static List <SupplyInfo> GetPagedList(int pPageIndex, int pPageSize, SortDirection pOrderBy, string pSortExpression, out int pRecordCount)
        {
            if (pPageIndex <= 1)
            {
                pPageIndex = 1;
            }
            List <SupplyInfo> list = new List <SupplyInfo>();

            Query q = Supply.CreateQuery();

            q.PageIndex = pPageIndex;
            q.PageSize  = pPageSize;
            q.ORDER_BY(pSortExpression, pOrderBy.ToString());
            SupplyCollection collection = new  SupplyCollection();

            collection.LoadAndCloseReader(q.ExecuteReader());

            foreach (Supply supply  in collection)
            {
                SupplyInfo supplyInfo = new SupplyInfo();
                LoadFromDAL(supplyInfo, supply);
                list.Add(supplyInfo);
            }
            pRecordCount = q.GetRecordCount();

            return(list);
        }