Пример #1
0
        public ActionResult LoadGrid()
        {
            try
            {
                var draw          = Request.Form.GetValues("draw").FirstOrDefault();
                var start         = Request.Form.GetValues("start").FirstOrDefault();
                var length        = Request.Form.GetValues("length").FirstOrDefault();
                var sortColumn    = Request.Form.GetValues("columns[" + Request.Form.GetValues("order[0][column]")?.FirstOrDefault() + "][name]")?.FirstOrDefault();
                var sortColumnDir = Request.Form.GetValues("order[0][dir]")?.FirstOrDefault();
                var searchValue   = Request.Form.GetValues("search[value]")?.FirstOrDefault();


                //Paging Size (10,20,50,100)
                int pageSize = length != null?Convert.ToInt32(length) : 0;

                int skip = start != null?Convert.ToInt32(start) : 0;

                int recordsTotal = 0;

                // Getting all data
                var sliderData = (from tempsliders in _sliderService.GetAllSliders() select tempsliders);

                //Search
                if (!string.IsNullOrEmpty(searchValue))
                {
                    sliderData = sliderData.Where(m => m.Name.Contains(searchValue));
                }

                //total number of rows count
                var enumerable = sliderData as Slider[] ?? sliderData.ToArray();
                recordsTotal = enumerable.Count();
                //Paging
                var data = enumerable.Skip(skip).Take(pageSize);

                //Returning Json Data
                return(new JsonResult()
                {
                    Data = new
                    {
                        draw = draw,
                        recordsFiltered = recordsTotal,
                        recordsTotal = recordsTotal,
                        data = data.Select(x => new SliderModel()
                        {
                            IsActive = x.IsActive,
                            Id = x.Id,
                            Name = x.Name.Trim(),
                            UserId = x.UserId,
                            CreatedOn = x.CreatedOn,
                            DisplayArea = x.DisplayArea,
                            DisplayAreaString = x.DisplayArea > 0 ? EnumExtensions.GetDescriptionByValue <DisplayAreas>(x.DisplayArea) : "",
                            DisplayOrder = x.DisplayOrder,
                            MaxPictures = x.MaxPictures,
                            ShowCaption = x.ShowCaption,
                            ShowNextPrevIndicators = x.ShowNextPrevIndicators,
                            ShowThumbnails = x.ShowThumbnails
                        }).OrderBy(x => x.Name).ToList()
                    },
                    ContentEncoding = Encoding.Default,
                    ContentType = "application/json",
                    JsonRequestBehavior = JsonRequestBehavior.AllowGet,
                    MaxJsonLength = int.MaxValue
                });
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message);
            }
        }
Пример #2
0
        public virtual ActionResult AdvancedSearch()
        {
            var model = _sliderService.GetAllSliders();

            return(PartialView(MVC.Home.Views._AdvancedSearch, model));
        }