public async Task <IActionResult> Index() { ListRealEstateViewModel viewModel = new ListRealEstateViewModel(); viewModel.RealEstateStatus = await _context.RealEstateStatuses.ToListAsync(); viewModel.RealEstatesBuy = await _context.RealEstates .Include(re => re.RealEstatePictures) .Include(re => re.RealEstateSubtype).ThenInclude(st => st.RealEstateType) .Include(re => re.Town) .Include(re => re.RealEstateStatus) .Where(re => re.RealEstateStatus.Status == "Te koop") .OrderByDescending(re => re.DateInit).Take(6).ToListAsync(); viewModel.RealEstatesHire = await _context.RealEstates .Include(re => re.RealEstatePictures) .Include(re => re.RealEstateSubtype).ThenInclude(st => st.RealEstateType) .Include(re => re.Town) .Include(re => re.RealEstateStatus) .Where(re => re.RealEstateStatus.Status == "Te huur") .OrderByDescending(re => re.DateInit).Take(6).ToListAsync(); viewModel.LocalDate = TimeZoneInfo.ConvertTime(DateTime.Now, TimeZoneInfo.FindSystemTimeZoneById("Central Europe Standard Time")); viewModel.SelectedStatus = 1; return(View(viewModel)); }
public async Task <IActionResult> Search(ListRealEstateViewModel viewModel) { viewModel.RealEstateStatus = await _context.RealEstateStatuses.ToListAsync(); IQueryable <RealEstate> queryableEstates = _context.RealEstates.AsQueryable(); if (viewModel.SelectedStatus != null) { queryableEstates = queryableEstates.Where(e => e.RealEstateStatusID == viewModel.SelectedStatus); } if (!string.IsNullOrEmpty(viewModel.TownSearch)) { queryableEstates = queryableEstates.Where(e => e.Town.Name.StartsWith(viewModel.TownSearch) || e.Town.ZIP.StartsWith(viewModel.TownSearch)); } viewModel.RealEstates = await queryableEstates .Include(e => e.Town) .Include(e => e.RealEstateStatus) .Include(e => e.RealEstateSubtype).ThenInclude(e => e.RealEstateType) .Include(e => e.RealEstatePictures) .Include(e => e.Agency) .ToListAsync(); return(View("Index", viewModel)); }
public IActionResult Search(ListRealEstateViewModel viewModel) { return(RedirectToAction(nameof(Search), "RealEstate", viewModel)); }