Exemplo n.º 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 <PoliticsInfo> GetPagedList(int pPageIndex, int pPageSize, SortDirection pOrderBy, string pSortExpression, out int pRecordCount)
        {
            if (pPageIndex <= 1)
            {
                pPageIndex = 1;
            }
            List <PoliticsInfo> list = new List <PoliticsInfo>();

            Query q = Politics.CreateQuery();

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

            collection.LoadAndCloseReader(q.ExecuteReader());

            foreach (Politics politics  in collection)
            {
                PoliticsInfo politicsInfo = new PoliticsInfo();
                LoadFromDAL(politicsInfo, politics);
                list.Add(politicsInfo);
            }
            pRecordCount = q.GetRecordCount();

            return(list);
        }