public async Task <IActionResult> Edit(int?id) { if (id == null) { return(RedirectToAction("New")); } Item item = await _domainContext.Items.Get(id.Value); ItemEditModel model = new ItemEditModelAssembler().ToModel(item); return(View("Edit", model)); }
public async Task <IActionResult> Run( [FromRoute] int?id, ItemEditModel editModel, ItemSettingsModel settings ) { this.ModelState.Clear(); if (id > 0) { Item item = await _domainContext.Items.Get(id.Value) ?? new Item(); editModel = new ItemEditModelAssembler().ToModel(item); } ItemRunModel model = new ItemRunModel(); model.EditModel = editModel; try { model.RunResult = await _jsService.Run(editModel.Code); if (model.RunResult.Exception != null) { this.ModelState.AddModelError("", "Error, Line " + model.RunResult.LastExecutedLine + " :" + model.RunResult.Exception.Message); } foreach (var error in model.RunResult.Errors) { this.ModelState.AddModelError("", error.ToJsonOrString()); } } catch (Exception ex) { this.ModelState.AddModelError("", ex.Message); } if (settings.RenderAs == "subView") { return(PartialView("_Run", model)); } return(View(model)); }