public async Task <IActionResult> Edit(int id, EntityFormViewModel entityVM) { if (id != entityVM.Id) { return(BadRequest()); } if (ModelState.IsValid) { try { var entity = _mapper.Map <Entity>(entityVM); _context.Update(entity); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } catch (DbUpdateConcurrencyException) { if (!await EntityExists(entityVM.Id)) { return(NotFound()); } else { throw; } } } return(View(entityVM)); }
/// <summary> /// Build the form view model. /// </summary> /// <param name="result"></param> /// <param name="modelname"></param> /// <returns></returns> public static EntityFormViewModel BuildViewModelForForm(EntityActionResult result, string modelname, string action, EntitySettingsHelper settings) { var viewmodel = new EntityFormViewModel(); PopulateViewModel(viewmodel, modelname, "ModelForm", settings); viewmodel.Entity = result.ItemAs <IEntity>(); viewmodel.FormActionName = action; return(viewmodel); }
public async Task <IActionResult> Create(EntityFormViewModel entityVM) { if (ModelState.IsValid) { var entity = _mapper.Map <Entity>(entityVM); _context.Add(entity); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } return(View(entityVM)); }
public ActionResult CreateForEntity(int id, int refgroup) { // Can create? var entityResult = _helper.Create(); var actionResult = BuildActionResult(entityResult, _viewSettings.PageLocationForCreate, onAfterViewModelCreated: (viewModel) => { EntityFormViewModel formModel = viewModel as EntityFormViewModel; formModel.FormActionName = "CreateForEntity"; formModel.RouteValues = new { id = id, refgroup = refgroup }; formModel.UrlCancel = string.Format("/mediafile/managebyrefid/{0}/?refgroup={1}", id, refgroup); }); return(actionResult); }