コード例 #1
0
        public ActionResult EditBreak(long santaId, BreakVM breakVM)
        {
            ViewBag.CurrState = ViewState.Edit;
            ViewBag.SantaId   = santaId;
            try
            {
                if (!ModelState.IsValid)
                {
                    var ms = ModelState;
                    return(View("BreakForm", breakVM));
                }

                var santa = FindSantaVM(santaId);
                santa.Breaks = santa.Breaks.Select(b => b.Id == breakVM.Id ? breakVM : b).ToList();

                var response = Client.PutAsJsonAsync($"api/santa/{santaId}", santa).Result;
                response.EnsureSuccessStatusCode();

                return(RedirectToAction("Details", new { id = santaId }));
            }
            catch (Exception e)
            {
                ModelState.AddModelError("exception", e);
                return(View("BreakForm", breakVM));
            }
        }
コード例 #2
0
        public ActionResult CreateBreak(long santaId, BreakVM breakVM)
        {
            ViewBag.CurrState = ViewState.Create;
            ViewBag.SantaId   = santaId;
            breakVM.Id        = 0L;
            try
            {
                if (!ModelState.IsValid)
                {
                    return(View("BreakForm", breakVM));
                }

                var santa = FindSantaVM(santaId);
                santa.Breaks.Add(breakVM);
                var response = Client.PutAsJsonAsync($"api/santa/{santaId}", santa).Result;
                response.EnsureSuccessStatusCode();

                return(RedirectToAction("Details", new { id = santaId }));
            }
            catch (Exception e)
            {
                ModelState.AddModelError("Exception", e);
                return(View("BreakForm", breakVM));
            }
        }