Esempio n. 1
0
        public Mvc.Pager.PagedList <object> GetList(Func <IQueryable <TEntity>, List <object> > selector,
                                                    SF.Framework.Mvc.Search.Model.QueryModel model,
                                                    string orderByString,
                                                    string order,
                                                    int PageIndex = 1,
                                                    int PageSize  = 24)
        {
            var query = order.Trim().ToLower().Equals("desc")
                ?
                        (this.DbSet.AsQueryable().Where(model).OrderBy(orderByString, true))
                :
                        (this.DbSet.AsQueryable().Where(model).OrderBy(orderByString));
            var result = query.Skip((PageIndex - 1) * PageSize).Take(PageSize);
            var list   = new Mvc.Pager.PagedList <object>(selector(result), PageIndex, PageSize, query.Count());

            return(list);

            #region reflection
            //PropertyInfo property = typeof(TEntity).GetProperty(orderByString);
            //string type = property.PropertyType.FullName;

            //Type generic = typeof(CreateExpression<,>);
            //Type[] typeArgs2 = { typeof(TEntity), Type.GetType(type) };
            //generic = generic.MakeGenericType(typeArgs2);
            //var dic = Activator.CreateInstance(generic);

            //MethodInfo mi = dic.GetType().GetMethod("GetExpressionByStringColumn");
            //Expression<Func<TEntity, int>> result = mi.Invoke(null, new object[] { orderByString }) as Expression<Func<TEntity, int>>;
            #endregion
        }
Esempio n. 2
0
        public Mvc.Pager.PagedList <object> GetPagedList(IQueryable <TEntity> query,
                                                         int PageIndex = 1,
                                                         int PageSize  = 24)
        {
            var result = query.Skip((PageIndex - 1) * PageSize).Take(PageSize).ToList();
            var list   = new Mvc.Pager.PagedList <object>(result, PageIndex, PageSize, query.Count());

            return(list);
        }
Esempio n. 3
0
        public Pager.PagedList <object> GetList(Expression <Func <TEntity, bool> > conditionExpression
                                                , Dictionary <string, bool> paramNames
                                                , int PageIndex = 1
                                                , int PageSize  = 24)
        {
            var query  = this.DbSet.Where(conditionExpression).OrderBy(paramNames);
            var result = query.Skip((PageIndex - 1) * PageSize).Take(PageSize);
            var list   = new Mvc.Pager.PagedList <object>(result, PageIndex, PageSize, query.Count());

            return(list);
        }
Esempio n. 4
0
        public Pager.PagedList <object> GetList(Func <IQueryable <TEntity>, List <object> > selector,
                                                Core.Specifications.ISpecification <TEntity> spec
                                                , Dictionary <string, bool> paramNames
                                                , int PageIndex = 1
                                                , int PageSize  = 24)
        {
            var query  = this.DbSet.Where(spec.GetExpression()).OrderBy(paramNames);
            var result = query.Skip((PageIndex - 1) * PageSize).Take(PageSize);
            var list   = new Mvc.Pager.PagedList <object>(selector(result), PageIndex, PageSize, query.Count());

            return(list);
        }
Esempio n. 5
0
        public Mvc.Pager.PagedList <object> GetList(Func <IQueryable <TEntity>, List <object> > selector,
                                                    SF.Framework.Mvc.Search.Model.QueryModel model,
                                                    Dictionary <string, bool> paramNames,
                                                    int PageIndex = 1,
                                                    int PageSize  = 24)
        {
            var query  = this.DbSet.Where(model).OrderBy(paramNames);
            var result = query.Skip((PageIndex - 1) * PageSize).Take(PageSize);
            var list   = new Mvc.Pager.PagedList <object>(selector(result), PageIndex, PageSize, query.Count());

            return(list);
        }
Esempio n. 6
0
        public Mvc.Pager.PagedList <TEntity> GetList <TOrder>(Expression <Func <TEntity, bool> > conditionExpression,
                                                              Expression <Func <TEntity, TOrder> > orderByExpression,
                                                              bool IsDESC,
                                                              int PageIndex = 1,
                                                              int PageSize  = 24)
        {
            var query = IsDESC
                ?
                        (this.DbSet.Where(conditionExpression).OrderByDescending(orderByExpression))
                :
                        (this.DbSet.Where(conditionExpression).OrderBy(orderByExpression));
            var result = query.Skip((PageIndex - 1) * PageSize).Take(PageSize).ToList();
            var list   = new Mvc.Pager.PagedList <TEntity>(result, PageIndex, PageSize, query.Count());

            return(list);
        }
Esempio n. 7
0
        public Mvc.Pager.PagedList <TEntity> GetList(SF.Framework.Mvc.Search.Model.QueryModel model,
                                                     string orderByString,
                                                     string order,
                                                     int PageIndex = 1,
                                                     int PageSize  = 24)
        {
            var query = order.Trim().ToLower().Equals("desc")
                ?
                        (this.DbSet.Where(model).OrderBy(orderByString, true))
                :
                        (this.DbSet.Where(model).OrderBy(orderByString));
            var result = query.Skip((PageIndex - 1) * PageSize).Take(PageSize).ToList();
            var list   = new Mvc.Pager.PagedList <TEntity>(result, PageIndex, PageSize, query.Count());

            return(list);
        }
Esempio n. 8
0
        public Mvc.Pager.PagedList <TEntity> GetList(Expression <Func <TEntity, bool> > conditionExpression,
                                                     string orderByString,
                                                     string order,
                                                     int PageIndex = 1,
                                                     int PageSize  = 24)
        {
            var query = order.Trim().ToLower().Equals("desc")
                ?
                        (this.DbSet.Where(conditionExpression).OrderBy(orderByString, true))
                :
                        (this.DbSet.Where(conditionExpression).OrderBy(orderByString));
            var result = query.Skip((PageIndex - 1) * PageSize).Take(PageSize).ToList();
            var list   = new Mvc.Pager.PagedList <TEntity>(result, PageIndex, PageSize, query.Count());

            return(list);
        }