Example #1
0
        public async Task<AppraiserListViewModel> GetPagedListAsync(AppraiserSearchRequest request)
        {
            var appraisers = _appraisers.AsNoTracking().Include(a => a.Creator).Include(a => a.LasModifier).Include(a => a.AppraiserTitle).OrderByDescending(a => a.LastName).ThenByDescending(a => a.FirstName).AsQueryable();

            if (request.Term.HasValue())
                appraisers = appraisers.Where(a => a.FirstName.Contains(request.Term) || a.LastName.Contains(request.Term));

            var selectedAppraisers = appraisers.ProjectTo<AppraiserViewModel>(_mappingEngine);

            var query = await selectedAppraisers
                .Skip((request.PageIndex - 1) * 10)
                .Take(10).ToListAsync();

            return new AppraiserListViewModel { SearchRequest = request, Appraisers = query };
        }
Example #2
0
		public virtual async Task<ActionResult> ListAjax(AppraiserSearchRequest request)
		{
			var viewModel = await _appraiserService.GetPagedListAsync(request);
			if (viewModel.Appraisers == null || !viewModel.Appraisers.Any()) return Content("no-more-info");
			return PartialView(MVC.Appraiser.Views._ListAjax, viewModel);
		}