您的位置:首页 > 其它

MVC动态获取树形菜单信息

2016-08-10 14:07 281 查看
菜单效果如图:



后台递归得到菜单树代码:

/// 获取菜单树
/// </summary>
/// <param name="ParentID">菜单父节点ID</param>
/// <returns></returns>
public IEnumerable<MenuInfo> GetList(string ParentID)
{
var list = Query(m => m.ParentID == ParentID).ToList();
foreach (var item in list)
{
MenuInfo menu = new MenuInfo();
menu.MenuID = item.MenuID;
menu.MenuName = item.MenuName;
menu.Controller = item.Controller;
menu.ControllerName = item.ControllerName;
menu.Action = item.Action;
menu.ActionName = item.ActionName;
menu.Url = item.Url;
menu.ParentID = item.ParentID;
menu.Icon = item.Icon;
menu.children.AddRange(GetList(menu.MenuID));
yield return menu;
}
}
Action将得到的菜单数据转为json结构如下:



拿到菜单树json数据,我们就可以在前端利用js遍历去构造树了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息