【问题标题】:ASP BOILERPLATE MVC - Menu OrderASP 样板 MVC - 菜单顺序
【发布时间】:2020-08-31 08:32:57
【问题描述】:

如何更改 MenuItem 的顺序 - 目前它是按字母顺序排序的,我不希望它被排序

 ).AddItem(
                    new MenuItemDefinition(
                        PageNames.Users,
                        L("Users"),
                        url: "Users",
                        icon: "fas fa-users",
                        permissionDependency: new SimplePermissionDependency(PermissionNames.Users)
                    )
                ).AddItem(
                    new MenuItemDefinition(
                        PageNames.Roles,
                        L("Roles"),
                        url: "Roles",
                        icon: "fas fa-theater-masks",
                        permissionDependency: new SimplePermissionDependency(PermissionNames.Roles)
                         )
                ).

【问题讨论】:

    标签: asp.net-mvc aspnetboilerplate


    【解决方案1】:

    在 aspnetboilerplate NavigationProvider 中初始化后,您可以按任何属性对项目进行排序,并将排序列表添加到菜单中,例如

    var itms = menu.Items.ToList();
            itms = itms.OrderBy(p=>p.BlahBlah).ToList();
            menu.Items.Clear();
            foreach (var t in itms)
            {
                menu.AddItem(t);
            }
    

    你可以让它递归所有级别的菜单。

    【讨论】:

    • 在哪里可以找到菜单初始化?我不希望它排序,我需要在 NavigationProvider 中添加它们时显示它
    • 这是默认行为。菜单的显示顺序与添加到 navigationProvider 的顺序相同。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-12-07
    • 2011-12-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多