有人可以帮我找出根据AbpUserRoles
显示/隐藏菜单项的正确方法吗?
我只是添加了两个菜单项,这些菜单项仅可用于role = {admin
。
我的代码使管理菜单在不应该显示的时间显示:
代码:
var adminMenu = context.Menu.GetAdministration();
adminMenu.Items.Add(new ApplicationMenuItem("Admin.Sites", "Sites", "/Sites"));
adminMenu.Items.Add(new ApplicationMenuItem("Admin.UserSites", "User Sites", "/UserSites"));
答案 0 :(得分:1)
好的,所以我最终的方法是通过按如下方式获取CurrentUser:
public class YourProjectMenuContributor : IMenuContributor
{
private async Task ConfigureMainMenuAsync(MenuConfigurationContext context)
{
if (context.GetHttpContext().User.IsInRole("admin"))
{
//....configure as required...
}
}
}