public ActionResult Index(string lang, string group) { ViewBag.MessageRed = TempData["MessageRed"]; ViewBag.MessageYellow = TempData["MessageYellow"]; ViewBag.MessageGreen = TempData["MessageGreen"]; if (string.IsNullOrEmpty(lang)) { lang = SF.GetLangCodeThreading(); } ViewBag.Lang = lang; if (string.IsNullOrEmpty(group)) { group = SF.GetFirstMenuGroup(); } ViewBag.Group = group; var menuItems = _db.Menus.Where(x => x.Group == group && x.LangCode == lang).OrderBy(x => x.DisplayOrder).AsNoTracking().ToList(); var model = menuItems.Where(x => x.ParentID == 0).ToList(); model.ForEach(x => { x.Childrens = GetChildrens(x.ID, menuItems);//.Where(m => m.ParentID == x.ID).ToList(); }); return(View(model)); }