Exemple #1
0
        public ActionResult Edit(int id, BattleEdit model)
        {
            var svc = CreateBattleService();

            if (!ModelState.IsValid)
            {
                return(View(model));
            }

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


            if (svc.UpdateBattle(model))
            {
                TempData["SaveResult"] = "Your Battle was updated! May the odds ever be in your favor.";
                return(RedirectToAction("Index"));
            }

            ViewBag.FirstCharacterId  = new SelectList(svc.Characters(), "FirstCharacterId", "CharacterName", model.FirstCharacterId);
            ViewBag.SecondCharacterId = new SelectList(svc.Characters(), "SecondCharacterId", "CharacterName", model.SecondCharacterId);
            ViewBag.WinnerCharacterId = new SelectList(svc.Characters(), "WinnerCharacterId", "CharacterName", model.WinnerCharacterId);
            ViewBag.FirstItemId       = new SelectList(svc.Items(), "FirstItemId", "ItemName", model.FirstItemId);
            ViewBag.SecondItemId      = new SelectList(svc.Items(), "SecondItemId", "ItemName", model.SecondItemId);

            ModelState.AddModelError("", "Your Battle could not be updated");
            return(View(model));
        }
Exemple #2
0
        //GET: Battle Edit
        public ActionResult Edit(int id)
        {
            var svc           = CreateBattleService();
            var characterList = new SelectList(svc.Characters(), "CharacterId", "CharacterName");

            ViewBag.FirstCharacterId  = characterList;
            ViewBag.SecondCharacterId = characterList;

            var itemList = new SelectList(svc.Items(), "ItemId", "ItemName");

            ViewBag.FirstItemId  = itemList;
            ViewBag.SecondItemId = itemList;

            var detail = svc.GetBattleById(id);
            var model  =
                new BattleEdit
            {
                BattleId          = detail.BattleId,
                BattleName        = detail.BattleName,
                Location          = detail.Location,
                FirstCharacterId  = detail.FirstCharacterId,
                SecondCharacterId = detail.SecondCharacterId,
                FirstItemId       = detail.FirstItemId,
                SecondItemId      = detail.SecondItemId,
                WinnerCharacterId = detail.WinnerCharacterId
            };

            return(View(model));
        }
Exemple #3
0
        public bool UpdateBattle(BattleEdit model)
        {
            Random winner  = new Random();
            var    outcome = winner.Next(0, 100);

            if (outcome < 50)
            {
                model.WinnerCharacterId = model.FirstCharacterId;
            }

            else
            {
                model.WinnerCharacterId = model.SecondCharacterId;
            }

            using (var ctx = new ApplicationDbContext())
            {
                var entity =
                    ctx
                    .Battles
                    .Single(e => e.BattleId == model.BattleId && e.OwnerId == _userId);

                entity.BattleName        = model.BattleName;
                entity.Location          = model.Location;
                entity.FirstCharacterId  = model.FirstCharacterId;
                entity.SecondCharacterId = model.SecondCharacterId;
                entity.FirstItemId       = model.FirstItemId;
                entity.SecondItemId      = model.SecondItemId;
                entity.WinnerCharacterId = model.WinnerCharacterId;

                return(ctx.SaveChanges() == 1);
            }
        }