public ActionResult Edit(int id)
        {
            var service = CreateTeamService();
            var detail  = service.GetTeamById(id);
            var model   =
                new NFLTeamInfoEdit
            {
                TeamId       = detail.TeamId,
                Name         = detail.Name,
                Abbreviation = detail.Abbreviation,
                City         = detail.City,
                Stadium      = detail.Stadium,
                HeadCoach    = detail.HeadCoach,
                Conference   = detail.Conference,
                Division     = detail.Division
            };

            return(View(model));
        }
        public bool UpdateNFLTeamInfo(NFLTeamInfoEdit model)
        {
            using (var ctx = new ApplicationDbContext())
            {
                var entity =
                    ctx
                    .TeamInfo
                    .Single(e => e.TeamId == model.TeamId);

                entity.Name         = model.Name;
                entity.City         = model.City;
                entity.Abbreviation = model.Abbreviation;
                entity.Conference   = model.Conference;
                entity.Division     = model.Division;
                entity.Stadium      = model.Stadium;
                entity.HeadCoach    = model.HeadCoach;

                return(ctx.SaveChanges() == 1);
            }
        }
        public ActionResult Edit(int id, NFLTeamInfoEdit model)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }

            if (model.TeamId != id)
            {
                ModelState.AddModelError("", "Team Id Mismatch");
                return(View(model));
            }

            var service = CreateTeamService();

            if (service.UpdateNFLTeamInfo(model))
            {
                TempData["SaveResult"] = "Team was updated.";
                return(RedirectToAction("Index"));
            }

            ModelState.AddModelError("", "Team could not be updated.");
            return(View());
        }