internal bool GuessSameMenu(Menu Menu, RawMenu rawmenu) { if (rawmenu != null) { if (rawmenu.LinkElement != null) { var href = rawmenu.LinkElement.getAttribute("href"); if (!string.IsNullOrEmpty(href)) { if (HasLink(Menu, ref href)) { return(true); } } } foreach (var item in rawmenu.Children) { if (GuessSameMenu(Menu, item)) { return(true); } } } return(false); }
public void AssignRawMenu(Menu CurrentMenu, RawMenu Raw) { foreach (var item in Raw.Children) { if (item.LinkElement != null) { var href = item.LinkElement.getAttribute("href"); var find = CurrentMenu.children.Find(o => o.Url == href); if (find != null) { AssignRawMenu(find, item); } else { Menu newmenu = new Menu(); newmenu.Url = href; newmenu.Name = item.LinkElement.InnerHtml; CurrentMenu.children.Add(newmenu); AssignRawMenu(newmenu, item); } } } }