public virtual async Task <ActionResult> ListAjax(EducationalExperienceSearchRequest request) { var viewModel = await _educationalExperienceService.GetPagedListAsync(request); if (viewModel.EducationalExperiences == null || !viewModel.EducationalExperiences.Any()) { return(Content("no-more-info")); } return(PartialView(MVC.EducationalExperience.Views._ListAjax, viewModel)); }
public async Task <EducationalExperienceListViewModel> GetPagedListAsync(EducationalExperienceSearchRequest request) { var educationalExperiences = _educationalExperiences.Where(a => a.ApplicantId == request.ApplicantId) .AsNoTracking() .Include(a => a.CreatedBy) .Include(a => a.ModifiedBy).OrderByDescending(a => a.CreatedOn) .AsQueryable(); var selectedEducationalExperiences = educationalExperiences.ProjectTo <EducationalExperienceViewModel>(_mappingEngine); var resultsToSkip = (request.PageIndex - 1) * 10; var query = await selectedEducationalExperiences .Skip(() => resultsToSkip) .Take(10).ToListAsync(); return(new EducationalExperienceListViewModel { SearchRequest = request, EducationalExperiences = query }); }