Ejemplo n.º 1
0
 private void AddIfMissing(NavMenuTreeItem navMenuTreeItem)
 {
     if (!navMenuTreeItem.Parent.HasValue) // If no Parent it must be a Module
     {
         if (!_navMenuItems.ContainsKey(navMenuTreeItem.Id))
         {
             Add(null, navMenuTreeItem);
         }
         else
         {
             if (navMenuTreeItem.Children != null)
             {
                 foreach (var menuTreeItem in navMenuTreeItem.Children)
                 {
                     AddIfMissing(menuTreeItem);
                 }
             }
         }
     }
     else
     {
         if (!_navMenuItems.ContainsKey(navMenuTreeItem.Id))
         {
             Add(navMenuTreeItem.Parent, navMenuTreeItem);
         }
     }
 }
Ejemplo n.º 2
0
        private void Add(Guid?parent, NavMenuTreeItem navMenuTreeItem)
        {
            if (parent.HasValue)
            {
                var module = _navMenuTreeItems.FirstOrDefault(item => item.Id == parent.Value);
                module.Children.Add(navMenuTreeItem);
            }
            else
            {
                _navMenuTreeItems.Add(navMenuTreeItem);
            }

            _navMenuItems = FlattenTree(_navMenuTreeItems);
        }