public async Task <IActionResult> Index()
        {
            ListFavoritesViewModel viewModel = new ListFavoritesViewModel();

            viewModel.User      = GetUser();
            viewModel.Favorites = await _context.Favorites
                                  .Include(f => f.RealEstate).ThenInclude(re => re.Agency)
                                  .Include(f => f.RealEstate).ThenInclude(re => re.RealEstateSubtype).ThenInclude(st => st.RealEstateType)
                                  .Include(f => f.RealEstate).ThenInclude(re => re.Town)
                                  .Include(f => f.RealEstate).ThenInclude(re => re.RealEstatePictures)
                                  .Include(f => f.RealEstate).ThenInclude(re => re.RealEstateStatus)
                                  .Where(f => f.UserAccountID == viewModel.User.UserAccountID).ToListAsync();

            return(View(viewModel));
        }
        public async Task <IActionResult> DeleteFavoriteConfirmed(int?realEstateID)
        {
            if (realEstateID == null)
            {
                return(NotFound());
            }

            ListFavoritesViewModel viewModel = new ListFavoritesViewModel();

            viewModel.User = GetUser();
            var favorite = _context.Favorites.Where(f => f.UserAccountID == viewModel.User.UserAccountID)
                           .Where(f => f.RealEstateID == realEstateID).FirstOrDefault();

            if (favorite == null)
            {
                return(NotFound());
            }

            _context.Favorites.Remove(favorite);
            await _context.SaveChangesAsync();

            return(RedirectToAction(nameof(Index), "Favorite"));
        }