public virtual PageData <TEntity> GetPageList <TEntity, TKey>(SearchModel searchModel, Expression <Func <TEntity, TKey> > orderByKeySelector, PageParam pageParam, bool bIsAscOrder = true, IQueryable <TEntity> queryEntity = null)
            where TEntity : class, new()
        {
            IQueryable <TEntity> queryList = GetQueryableList(searchModel, queryEntity);

            return(PageHelper.GetPageData(queryList, orderByKeySelector, pageParam, bIsAscOrder, searchModel?.Sort));
        }
        public virtual PageData <TEntity> GetPageList <TEntity, TSearchModel>(TSearchModel searchModel, PageParam pageParam, bool bIsAscOrder = true, IQueryable <TEntity> queryEntity = null)
            where TEntity : class, new()
            where TSearchModel : ISearchModel
        {
            Expression <Func <TEntity, int> > keySelector = PageHelper.GetDefaultKeyExpression <TEntity, int>();
            IQueryable <TEntity> queryList = GetQueryableList <TEntity, TSearchModel>(searchModel, queryEntity);

            return(PageHelper.GetPageData(queryList, keySelector, pageParam, bIsAscOrder, searchModel?.Sort));
        }