public ActionResult Edit(int id)
        {
            var service = CreatePlayerService();
            var detail  = service.GetPlayerById(id);
            var model   =
                new NFLPlayerInfoEdit
            {
                PlayerId     = detail.PlayerId,
                FirstName    = detail.FirstName,
                LastName     = detail.LastName,
                Age          = detail.Age,
                Position     = detail.Position,
                Team         = detail.Team,
                InjuryStatus = detail.InjuryStatus
            };

            return(View(model));
        }
        public bool UpdateNFLPlayerInfo(NFLPlayerInfoEdit model)
        {
            using (var ctx = new ApplicationDbContext())
            {
                var entity =
                    ctx
                    .PlayerInfo
                    .Single(e => e.PlayerId == model.PlayerId);

                entity.FirstName    = model.FirstName;
                entity.LastName     = model.LastName;
                entity.Position     = model.Position;
                entity.Team         = model.Team;
                entity.Age          = model.Age;
                entity.InjuryStatus = model.InjuryStatus;

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

            if (model.PlayerId != id)
            {
                ModelState.AddModelError("", "Id Mistmatch");
                return(View(model));
            }

            var service = CreatePlayerService();

            if (service.UpdateNFLPlayerInfo(model))
            {
                TempData["SaveResult"] = "Player info was saved.";
                return(RedirectToAction("Index"));
            }

            ModelState.AddModelError("", "Player info could not be updated.");
            return(View(model));
        }