public ActionResult Edit(string distanceList, EditLastRaceVM vm) { var runner = db.runners.SingleOrDefault(r => r.EFKey == vm.RunnerId); var lastRace = db.LastRaces.SingleOrDefault(l => l.RunnerId == runner.EFKey); lastRace.Distance = Convert.ToDouble(distanceList); lastRace.Time = Convert.ToInt32(vm.RaceTimeSpan.TotalSeconds); lastRace.Date = DateTime.Now; try { db.Entry(lastRace).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index", "NextRaces")); } catch { LastRace Race = db.LastRaces.SingleOrDefault(r => r.RunnerId == vm.RunnerId); if (Race == null) { return(RedirectToAction("Index", "NextRaces")); } var distances = db.distances; ViewBag.distanceList = buildSelectList(distances, Race.Distance); var nvm = new EditLastRaceVM(Race); return(View(nvm)); } }
// GET: NextRaces/Edit/5 public ActionResult Edit(int?id) { if (id == null) { return(RedirectToAction("Index", "NextRaces")); } LastRace Race = db.LastRaces.SingleOrDefault(r => r.RunnerId == id); if (Race == null) { return(RedirectToAction("Index", "NextRaces")); } var distances = db.distances; ViewBag.distanceList = buildSelectList(distances, Race.Distance); var vm = new EditLastRaceVM(Race); return(View(vm)); }