public ActionResult Create([Bind(Include = "Id,ParentId,Name")] Node node) { if (ModelState.IsValid) { db.Nodes.Add(node); db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.ParentId = new SelectList(db.Nodes, "Id", "Name", node.ParentId); return(View(node)); }
public ActionResult Index(HttpPostedFileBase file, string keyWord) { var fileName = Path.GetFileName(file.FileName); string path = Path.Combine(Server.MapPath("~/Content/"), fileName); file.SaveAs(path); using (StreamReader read = new StreamReader(path)) { var line = read.ReadToEnd().Split('.'); foreach (var item in line) { if (item.Contains(keyWord)) { db.Nodes.Add(new Node(Reverse(item))); db.SaveChanges(); } } } System.IO.File.Delete(path); List <string> dataDB = new List <string>(); foreach (var item in db.Nodes.ToList()) { dataDB.Add(Reverse(item.Sentence)); } return(View(dataDB)); }
public ActionResult Update(string str) { db.Nodes.Add(new Node { Stroke = str }); db.SaveChanges(); return(PartialView(db.Nodes)); }
static void Main(string[] args) { using (var context = new NodeContext()) { var count = context.Nodes.Count(); //context.Database.ExecuteSqlCommand("delete Nodes"); var root = AddChild(null, "root", context); CURRENT_HIERARCHY = 0; CreateChildren(new List <Node> { root }, CURRENT_HIERARCHY, context); context.SaveChanges(); } }
///<summary> ///Метод Set для работы с нодами. ///Задаёт значение parametr для заданой ноды по заданному условию ///Возвращает true в случае успеха. False в случае исключения. ///Проверка на наличие ноды в БД. При отсутствии выбразывается исключение. ///</summary> ///<param name="node">Нода дял добавления</param> public bool Insert(Node node) { try { using (NodeContext context = new NodeContext()) { var search = context.Nodes.Where(n => n.Id == node.Id).ToList(); if (search.Count != 0) { throw new Exception(); } context.Nodes.Add(node); context.SaveChanges(); } return(true); } catch (Exception) { return(false); } }
///<summary> ///Метод устанавливающий родителя. ///Использованная хранимаюв БД процедура ///</summary> ///<param name="nodeId">Id ноды для изменения</param> ///<param name="parentId">Id родителя</param> public bool SetParent(int nodeId, int parentId) { try { using (NodeContext context = new NodeContext()) { object[] param = { new SqlParameter("@nodeid", nodeId), new SqlParameter("@Parentid", parentId) }; context.Nodes.FromSql($"SetParentId @nodeid, @Parentid", param); context.SaveChanges(); } return(true); } catch (Exception) { return(false); } }
//TODO: Нужно сделать возможность изменять несколько полей ///<summary> ///Метод Set для работы с нодами. ///Задаёт значение ID родителя для заданой ноды ///Возвращает true в случае успеха. False в случае исключения. ///Проверка на наличие ноды в БД. При отсутствии выбразывается исключение. ///</summary> ///<param name="parrentId">Id родителя</param> ///<param name="nodeId">Id ноды</param> public bool Set <T>(int nodeId, int parrentId) { try { using (NodeContext context = new NodeContext()) { var node = context.Nodes.FirstOrDefault(x => x.Id == nodeId); if (node == null) { throw new ArgumentNullException(); } node.parentId = parrentId; context.SaveChanges(); } return(true); } catch (Exception) { return(false); } }