Пример #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 <StampInfo> GetPagedList(int pPageIndex, int pPageSize, SortDirection pOrderBy, string pSortExpression, out int pRecordCount)
        {
            if (pPageIndex <= 1)
            {
                pPageIndex = 1;
            }
            List <StampInfo> list = new List <StampInfo>();

            Query q = Stamp.CreateQuery();

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

            collection.LoadAndCloseReader(q.ExecuteReader());

            foreach (Stamp stamp  in collection)
            {
                StampInfo stampInfo = new StampInfo();
                LoadFromDAL(stampInfo, stamp);
                list.Add(stampInfo);
            }
            pRecordCount = q.GetRecordCount();

            return(list);
        }