public async Task <bool> SaveInDatabase(vm.ContentBlockForm info) { if (!ModelState.IsValid(info)) { Notify(ModelState.GetErrors().ToLinesString(), "error"); return(false); } var item = info.Item.Clone(); await info.CopyDataTo(item); // Read the ViewModel data into the domain object. using (var scope = Database.CreateTransactionScope()) { try { info.Item = await Database.Save(item); scope.Complete(); return(true); } catch (Olive.Entities.ValidationException ex) { Notify(ex.ToFullMessage(), "error"); } return(false); } }
public async Task OnBound(vm.ContentBlockForm info) { info.Item = info.Item ?? new ContentBlock(); if (Request.IsGet()) { await info.Item.CopyDataTo(info); } }
public async Task <ActionResult> Save(vm.ContentBlockForm info) { try { if (!await SaveInDatabase(info)) { return(JsonActions(info)); } } catch (Olive.Entities.ValidationException ex) { return(Notify(ex.Message, "error")); } return(AjaxRedirect(Url.ReturnUrl())); }
public async Task <ActionResult> Index(vm.ContentBlockForm info) { ModelState.Clear(); // Remove initial validation messages return(View(info)); }