public Menu CombineMenus(List<Menu> menuList)
{
if (menuList != null)
{
log.InfoFormat("[CombineMenus] menuList.Count={0}.", menuList.Count);
if (menuList.Count == 1) return menuList[0];
int menuPartCount = 0;
Menu returnMenu = new Menu();
foreach (var menu in menuList)
{
foreach (var menuPart in menu.MenuParts)
{
if (!returnMenu.MenuParts.Exists(m => m.Name == menuPart.Name))
{
menuPart.Id = menuPartCount++;
returnMenu.MenuParts.Add(menuPart);
}
}
}
return returnMenu;
}
else
{
log.WarnFormat("[CombineMenus] menuList is null.", menuList.Count);
return null;
}
}