Esempio n. 1
0
        internal static IEnumerable <Menu> Intersact(IEnumerable <Menu> first, IEnumerable <Menu> second)
        {
            var firstDic  = Union(first).ToDictionary(item => item.Id);
            var secondDic = Union(second).ToDictionary(item => item.Id);

            return(firstDic.Where(item => secondDic.ContainsKey(item.Key)).Select(item => Menu.Intersact(item.Value, secondDic[item.Key])).Where(menu => menu != null && !menu.IsEmpty));
        }