public ActionResult Search(string tag = "", int page = 1) { PhotoPageInfo pageInfo = new PhotoPageInfo { PageNumber = page, PageSize = ImagesOnPage, Tag = tag, TotalItems = photoService.CountByTag(tag) }; if (Request.IsAjaxRequest()) { IEnumerable <PhotoViewModel> photos = photoService.GetByTag(tag, pageInfo.Skip, pageInfo.PageSize) .Select(p => p.ToPhotoViewModel()); PaginationViewModel <PhotoViewModel> pagedPhotos = new PaginationViewModel <PhotoViewModel> { PageInfo = pageInfo, Items = photos }; return(Json(pagedPhotos, JsonRequestBehavior.AllowGet)); } IEnumerable <PhotoViewModel> photos2 = photoService.GetByTag(tag, 0, ImagesOnPage * page) .Select(p => p.ToPhotoViewModel()); PaginationViewModel <PhotoViewModel> pagedPhotos2 = new PaginationViewModel <PhotoViewModel> { PageInfo = pageInfo, Items = photos2 }; return(View("Index", pagedPhotos2)); }
//Pagination public ActionResult Index(int page = 1) { PhotoPageInfo pageInfo = new PhotoPageInfo { PageNumber = page, PageSize = ImagesOnPage, Tag = string.Empty, TotalItems = photoService.CountByTag(string.Empty) }; IEnumerable <PhotoViewModel> photos = photoService.GetAll(0, ImagesOnPage * page) .Select(p => p.ToPhotoViewModel()); return(View(new PaginationViewModel <PhotoViewModel> { PageInfo = pageInfo, Items = photos })); }