public ActionResult ShowComponentsInCategory(int id, int page = 1)
 {
     var components = _componentRepo.Get().Where(x => x.Type.CategoryId == id);
     var result = new ShowComponentsViewModel()
     {
         PagingInfo = new PagingInfo
         {
             CurrentPage = page,
             ItemsPerPage = PageSize,
             TotalItems = components.Count()
         }
     };
     components = components.OrderBy(c => c.Id).Skip((page - 1) * PageSize).Take(PageSize);
     result.Components = AutoMapper.Mapper.Map<List<ComponentViewModel>>(components);
     ViewBag.viewType = "ByCategory";
     return View("ShowComponents", result);
 }
 public ActionResult ShowLoanedComponents(int page = 1)
 {
     var loanedComponents = _componentRepo.Get().Where(x => x.Loaner != null);
     var result = new ShowComponentsViewModel()
     {
         PagingInfo = new PagingInfo
         {
             CurrentPage = page,
             ItemsPerPage = PageSize,
             TotalItems = loanedComponents.Count()
         }
     };
     loanedComponents = loanedComponents.OrderBy(c => c.Id).Skip((page - 1) * PageSize).Take(PageSize);
     result.Components = AutoMapper.Mapper.Map<List<ComponentViewModel>>(loanedComponents);
     ViewBag.viewType = "LoanedComponents";
     return View("ShowComponents", result);
 }
 public ActionResult ShowComponents(int page = 1)
 {
     var components = _componentRepo.Get();
     var result = new ShowComponentsViewModel()
     {
         PagingInfo = new PagingInfo
         {
             CurrentPage = page,
             ItemsPerPage = PageSize,
             TotalItems = components.Count()
         }
     };
     components = components.OrderBy(c => c.Id).Skip((page - 1) * PageSize).Take(PageSize);
     result.Components = AutoMapper.Mapper.Map<List<ComponentViewModel>>(components);
     return View(result);
 }