public async Task <IActionResult> Edit(ChampionshipViewModel championshipViewModel) { if (!ModelState.IsValid) { ModelState.AddModelError(string.Empty, "Data is not valid"); championshipViewModel.CountriesItems = countryService.GetAllAsKeyValuePairs(); return(View(championshipViewModel)); } try { await championshipService.UpdateAsync(championshipViewModel); } catch (Exception ex) { ModelState.AddModelError(string.Empty, ex.InnerException?.Message ?? ex.Message); championshipViewModel.CountriesItems = countryService.GetAllAsKeyValuePairs(); return(View(championshipViewModel)); } TempData["SuccessMessage"] = $"Championship {championshipViewModel.Name} updated successfully."; return(RedirectToAction("Index")); }