首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >根据用户启用特定页面

根据用户启用特定页面
EN

Stack Overflow用户
提问于 2011-04-02 01:25:41
回答 2查看 695关注 0票数 0

使用ASP.Net和C#

网页菜单包括管理、人力资源、IT

我在我的网站上使用登录页面。

条件

代码语言:javascript
复制
If the website is login by Admin User, Admin Menu only enable
If the website is login by HR User, HR menu only enable
....

如何为上述情况编写代码。

需要代码帮助

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-04-02 01:35:41

我假设你在这里使用内置的roleManager和成员资格。

如果您正在使用菜单控件,我相信如果目标链接设置得当,菜单将遵循位置权限。所以,如果你在你的web.config中添加了类似这样的东西(还没有检查过确切的标记,但希望你能理解):

代码语言:javascript
复制
<location path="admin/admin.aspx">
  <system.web>
    <authorization>
      <allow roles="Admin" />
    </authorization>
  </system.web>
</location>
<location path="hr/hr.aspx">
  <system.web>
    <authorization>
      <allow roles="HR" />
    </authorization>
  </system.web>
</location>

如果您正在构建一个自定义菜单,就像下面这样简单

代码语言:javascript
复制
<% if (HttpContext.Current.User.IsInRole("Admin"){ %> <li>Admin Menu</li> <% } %> 

你的菜单项应该可以做到这一点

票数 1
EN

Stack Overflow用户

发布于 2011-04-02 02:17:15

任何具有服务器“runat=”的控件都有一个可见属性,该属性可以绑定到使用

代码语言:javascript
复制
Visible='<%# IsAdmin %>'

在代码中,IsAdmin是您创建的返回布尔值的属性。不可见的项目不会被渲染。将每个菜单的visible属性设置为IsAdmin、IsHR和IsIT,只有这些菜单的属性返回为true时才会被查看。

顺便说一句,在绑定两边使用单引号是一种习惯,因为有时您希望在绑定语句中使用双引号。在这种情况下,双引号也可以。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5516723

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档