예제 #1
0
        public PagerModel GetPageList(PagerDataRequest dataPager, IQueryable queryPaging)
        {
            PagerModel pagerModel = new PagerModel();

            pagerModel.TotalRows = queryPaging.Count();

            #region " Filtering "

            if (dataPager.Filter != null && (dataPager.Filter.Filters != null && dataPager.Filter.Filters.Count > 0))
            {
                //string whereCond = null;
                //var param = new List<object>();
                //var filters = dataPager.Filter.Filters;

                //for (int i = 0; i < filters.Count; i++)
                //{
                //    if (i == 0)
                //    {
                //        whereCond += string.Format(" {0}",)
                //    }
                //    else
                //    {

                //    }
                //}

            }

            #endregion

            #region " Sorting "

            var sort = dataPager.Sort;
            string sortBy = null;

            for (int i = 0; i < sort.Count; i++)
            {
                if (i == sort.Count - 1)
                {
                    sortBy += sortBy + string.Format("{0} {1}", sort[i].Field, sort[i].Dir);
                }
                else
                {
                    sortBy += sortBy + string.Format("{0} {1}, ", sort[i].Field, sort[i].Dir);
                }
            }
            queryPaging = queryPaging.OrderBy(sortBy);

            #endregion

            pagerModel.Data = queryPaging.Skip(dataPager.Skip).Take(dataPager.Take);

            return pagerModel;
        }
예제 #2
0
 public PagerModel GetUserList(PagerDataRequest request)
 {
     //throw new Exception("hahaha");
     return GetPageList(request, m_userRepository.GetUserList());
 }
예제 #3
0
        public JsonResult List(PagerDataRequest request)
        {
            if (request.Sort == null)
            {
                request.Sort = new List<GridSort>();
                var defSort = new GridSort();
                defSort.Field = "UserId";
                defSort.Dir = "asc";
                request.Sort.Add(defSort);
            }

            var pageModel = UserService.GetUserList(request);
            var pageViewModel = new PagerViewModel();
            Mapper.Map(pageModel, pageViewModel);

            return this.Json(pageViewModel, JsonRequestBehavior.AllowGet);
        }