Esempio n. 1
0
        internal static IEnumerable <Menu> Union(IEnumerable <Menu> menus)
        {
            var dicMenus = new Dictionary <Guid, Menu>();

            foreach (var item in menus)
            {
                if (item != null)
                {
                    if (dicMenus.ContainsKey(item.Id))
                    {
                        dicMenus[item.Id] = Menu.Union(dicMenus[item.Id], item);
                    }
                    else
                    {
                        dicMenus.Add(item.Id, item.Clone());
                    }
                }
            }
            foreach (var item in dicMenus)
            {
                item.Value.Sort();
            }
            return(dicMenus.Values);
        }