public async Task <IActionResult> Update() { var cities = await this.cityService.GetCities(); var models = new CityUpdateListViewModel(cities.Select(city => new CityUpdateViewModel(city))); return(this.View(models)); }
public IActionResult SetId(CityUpdateListViewModel viewModel) { var model = new CityUpdateListViewModel() { Id = viewModel.Id, Name = viewModel.Name }; return(PartialView("_CityInputPartial", model)); }
public async Task <IActionResult> Update(CityUpdateListViewModel cityViewModel) { if (!this.ModelState.IsValid) { return(RedirectToAction("Update")); } var city = await this.cityService.GetCity(cityViewModel.Id); if (city == null) { this.TempData["Error-Message"] = $"City doesn't exist!"; return(this.RedirectToAction("Update", "City")); } try { await this.cityService.UpdateName(city.Id, cityViewModel.Name); } catch (EntityAlreadyExistsException e) { this.TempData["Error-Message"] = e.Message; return(this.RedirectToAction("Update", "City")); } catch (InvalidClientInputException e) { this.TempData["Error-Message"] = e.Message; return(this.RedirectToAction("Update", "City")); } catch (EntityDoesntExistException e) { this.TempData["Error-Message"] = e.Message; return(this.RedirectToAction("Update", "City")); } this.TempData["Success-Message"] = $"You successfully changed the city with new name {cityViewModel.Name}!"; return(this.RedirectToAction("Update", "City")); }