public ActionResult Edit(TreeNodeInput input) { if (!ModelState.IsValid) return View("Create", input); var node = Db.Get<TreeNode>(input.Id); node.Name = input.Name; Db.Update(node); return Json(new { node.Id }); }
public ActionResult Create(TreeNodeInput input) { if (!ModelState.IsValid) return View(input); var parent = input.ParentId != 0 ? Db.Get<TreeNode>(input.ParentId) : null; var node = new TreeNode { Name = input.Name, Parent = parent }; Db.Insert(node); var result = new { Node = MapNode(node), ParentId = node.Parent != null ? node.Parent.Id : 0 // we'll refresh the parent when adding child }; return Json(result); }