public ActionResult Edit(int id) { var service = CreateSharkTagService(); var detail = service.GetSharkTagById(id); var userId = Guid.Parse(User.Identity.GetUserId()); var sservice = new SharkService(userId); var tservice = new TagService(userId); var lservice = new LocationService(userId); List <Shark> sharks = sservice.GetSharksList().ToList(); List <Tag> tags = tservice.GetTagsList().ToList(); List <Location> locations = lservice.GetLocationsList().ToList(); ViewBag.SharkId = sharks.Select(s => new SelectListItem() { Value = s.SharkId.ToString(), Text = s.SharkName, Selected = detail.SharkId == s.SharkId }); ViewBag.TagId = tags.Select(t => new SelectListItem() { Value = t.TagId.ToString(), Text = t.TagId.ToString(), Selected = detail.TagId == t.TagId }); ViewBag.LocationId = locations.Select(l => new SelectListItem() { Value = l.LocationId.ToString(), Text = l.TaggingLocation, Selected = detail.LocationId == l.LocationId }); var model = new SharkTagEdit { SharkTagId = detail.SharkTagId, StartDate = detail.StartDate, EndDate = detail.EndDate, SharkId = detail.SharkId, TagId = detail.TagId, LocationId = detail.LocationId }; return(View(model)); }
public bool UpdateSharkTag(SharkTagEdit model) { using (var ctx = new ApplicationDbContext()) { var entity = ctx.SharkTag.Single(e => e.SharkTagId == model.SharkTagId && e.OwnerId == _userId); entity.StartDate = model.StartDate; entity.EndDate = model.EndDate; entity.SharkId = model.SharkId; entity.LocationId = model.LocationId; entity.TagId = model.TagId; return(ctx.SaveChanges() == 1); } }
public ActionResult Edit(int id, SharkTagEdit model) { if (!ModelState.IsValid) { return(View(model)); } if (model.SharkTagId != id) { ModelState.AddModelError("", "Id Mismatch"); return(View(model)); } var service = CreateSharkTagService(); if (service.UpdateSharkTag(model)) { TempData["SaveResult"] = "Your Shark Tagging Event was updated."; return(RedirectToAction("Index")); } ModelState.AddModelError("", "Your Shark Tagging Event could not be updated."); return(View(model)); }