public ActionResult SetWinners(EventWinnerVM model) { try { if (ModelState.IsValid) { Exception result = db.SetWinners(model); if (result == null) { return(RedirectToAction("Results", "Game", new { area = "" })); } else { throw result; } } //get model invalid errors string messages = string.Join(" ", ModelState.Values .SelectMany(x => x.Errors) .Select(x => x.ErrorMessage)); ModelState.AddModelError("Error", string.Format("The following validation errors occurred:{0}", messages)); model.Event = db.GetEventByYear(model.Event.Year); model.EventCountries = new SelectList(db.GetEventCountriesByYear(model.Event.Year), "id", "Description"); return(View(model)); } catch (Exception ex) { ModelState.AddModelError("Error", ex.InnerException.Message); model.Event = db.GetEventByYear(model.Event.Year); model.EventCountries = new SelectList(db.GetEventCountriesByYear(model.Event.Year), "id", "Description"); return(View(model)); } }
Exception SourceRepository.SetWinners(EventWinnerVM model) { try { //get the event Event e = db.Events.Find(model.Event.Year); //create euro winner EventCountry EW_EC = db.EventCountries.Find(model.EventCountryEuroWinner); e.EurovisionWinner = new EurovisionWinner { Year = model.Event.Year, CountryID = EW_EC.CountryID, Player = EW_EC.OwningPlayer }; //create home champ EventCountry HC_EC = db.EventCountries.Find(model.EventCountryHomeChamp); e.HomeChampion = new HomeChampion { Year = model.Event.Year, CountryID = HC_EC.CountryID, Player = HC_EC.OwningPlayer }; db.Entry(e).State = EntityState.Modified; db.SaveChanges(); return(null); } catch (Exception ex) { return(ex); } }
public ActionResult SetWinners(int id) { EventWinnerVM model = new EventWinnerVM(); model.Event = db.GetEventByYear(id); model.EventCountries = new SelectList(db.GetEventCountriesByYear(id), "id", "Description"); return(View(model)); }