public async Task <IActionResult> Create(Int32?wardId, WardStuffsCreateEditViewModel model) { if (wardId == null) { return(this.NotFound()); } var ward = await this._context.Wards .SingleOrDefaultAsync(x => x.Id == wardId); if (ward == null) { return(this.NotFound()); } if (ModelState.IsValid) { var wardStuffId = this._context.WardStuffs.Any() ? this._context.WardStuffs.Max(x => x.WardStuffId) + 1 : 1; var wardStuff = new WardStuff { WardId = ward.Id, WardStuffId = wardStuffId, Name = model.Name, Position = model.Position }; _context.Add(wardStuff); await _context.SaveChangesAsync(); return(RedirectToAction("Index", new { wardId = ward.Id })); } this.ViewBag.Ward = ward; return(this.View(model)); }
public async Task <IActionResult> Edit(Int32?wardId, Int32?wardStuffId, WardStuffsCreateEditViewModel model) { if (wardId == null || wardStuffId == null) { return(NotFound()); } var ward = await _context.WardStuffs.SingleOrDefaultAsync(m => m.WardStuffId == wardStuffId && m.WardId == wardId); if (ward == null) { return(NotFound()); } if (ModelState.IsValid) { ward.Name = model.Name; ward.Position = model.Position; await _context.SaveChangesAsync(); return(RedirectToAction("Index", new { wardId = wardId })); } return(View(ward)); }