public class MenuTree
{
public long id { get; set; }
public string text { get; set; }
public string icon { get; set; }
public string route { get; set; }
public List<MenuTree> children = new List<MenuTree>();
/// <summary>
/// 递归生成树形菜单
/// </summary>
/// <param name="menuList">菜单数据</param>
/// <param name="parenId">父级ID</param>
/// <returns></returns>
public static List<MenuTree> CreateTree(List<Menu> menuList, long parenId = 0)
{
var resources = menuList.Where(m => m.ParentId == parenId).Select(s =>
new MenuTree
{
id = s.Id,
text = s.Name,
route = s.Nickname ?? ""
}).ToList();
if (resources.Count > 0)
{
var data = new List<MenuTree>();
resources.ForEach(t =>
{
t.children = CreateTree(menuList, t.id);
data.Add(t);
});
return data;
}
return new List<MenuTree>();
}
}
版权归属:
管理员
许可协议:
本文使用《署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0)》协议授权
评论区