Пример #1
0
        /// <summary>
        /// Add data
        /// </summary>
        /// <param name="path">Path to add</param>
        public void Add(string path, T data)
        {
            List <string> vertexs = path.Split(new char[] { '/' }, StringSplitOptions.RemoveEmptyEntries).ToList <string>();
            string        name    = vertexs.Last();

            vertexs.RemoveAt(vertexs.Count - 1);
            Vertex <T> cur = _root;

            foreach (string vertexName in vertexs)
            {
                var t = cur.GetChild(vertexName);
                if (t == null)
                {
                    cur.AddChild(new Vertex <T>(vertexName, default(T)));
                }
                cur = cur.GetChild(vertexName);
            }
            cur.AddChild(new Vertex <T>(name, data));
        }