Exemple #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 <ProductTypeInfo> GetPagedList(int pPageIndex, int pPageSize, SortDirection pOrderBy, string pSortExpression, out int pRecordCount)
        {
            if (pPageIndex <= 1)
            {
                pPageIndex = 1;
            }
            List <ProductTypeInfo> list = new List <ProductTypeInfo>();

            Query q = ProductType.CreateQuery();

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

            collection.LoadAndCloseReader(q.ExecuteReader());

            foreach (ProductType productType  in collection)
            {
                ProductTypeInfo productTypeInfo = new ProductTypeInfo();
                LoadFromDAL(productTypeInfo, productType);
                list.Add(productTypeInfo);
            }
            pRecordCount = q.GetRecordCount();

            return(list);
        }