gpt4 book ai didi

asp.net - 我可以隐藏/显示 asp :Menu items based on role?

转载 作者:行者123 更新时间:2023-12-03 09:00:38 25 4
gpt4 key购买 nike

我可以在 asp:Menu 中隐藏某些菜单项吗?基于角色的控制?

<asp:Menu ID="mTopMenu" runat="server" Orientation="Horizontal" />
<Items>
<asp:MenuItem Text="File">
<asp:MenuItem Text="New Project" />
<asp:MenuItem Text="Release Template" NavigateUrl="~/Release/ReleaseTemplate.aspx" />
<asp:MenuItem Text="Release Schedule" NavigateUrl="~/Release/ReleaseSchedule.aspx" />
<asp:MenuItem Text="Roles" NavigateUrl="~/Admin/AdminRoles.aspx" />
</asp:MenuItem>
</Items>
</asp:Menu>

如何使这些项目之一仅对具有管理员角色的用户可见?
我正在使用 asp.net 角色提供程序。

最佳答案

我在站点母版页中有我的菜单。我使用 Page_Load() 函数使“管理员”菜单项仅对具有管理员角色的用户可见。

using System;
using System.Linq;
using Telerik.Web.UI;
using System.Web.Security;



<telerik:RadMenu ID="menu" runat="server" RenderMode="Auto" >
<Items>
<telerik:RadMenuItem Text="Admin" Visible="true" />
</Items>
</telerik:RadMenu>

protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
RadMenuItem item = this.menu.FindItemByText("Admin");
if (null != item)
{
if (Roles.IsUserInRole("Admin"))
{
item.Visible = true;
}
else
{
item.Visible = false;
}
}
}
}

关于asp.net - 我可以隐藏/显示 asp :Menu items based on role?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4939031/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com