public Termin AddTermin(int id, string name, TerminType type, IEnumerable <int> parentIds)
        {
            strToId[name] = id;
            var term = new Termin(name, type);

            if (parentIds == null || !parentIds.Any())
            {
                Root.Children.Add(term);
                term.Parents.Add(Root);
            }
            foreach (var parentId in parentIds)
            {
                var parent = Termins[parentId];
                term.Parents.Add(Termins[parentId]); //guaranteed to find parent if using klan
                parent.Children.Add(term);
            }
            Termins.Add(id, term);
            return(term);
        }
Exemple #2
0
 /// <summary>
 /// Добавить термин. После добавления нельзя вносить изменения в термин,
 /// кроме как в значения Tag и Tag2 (иначе потом нужно вызвать Reindex).
 /// </summary>
 /// <param name="term">термин</param>
 public void Add(Termin term)
 {
     Termins.Add(term);
     m_HashCanonic = null;
     this.Reindex(term);
 }