根据权限添加导航链接?

时间:2013-01-30 18:14:51

标签: c# asp.net

我在asp .net中有以下母版页:

<%@ Master Language="C#" AutoEventWireup="true" CodeBehind="KezberProjectManager.master.cs" Inherits="KezberProjectManager.KezberProjectManager" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>

    <!-- Le styles -->
    <link href="assets/css/bootstrap.css" rel="stylesheet"/>
    <link href="assets/css/bootstrap-responsive.css" rel="stylesheet"/>

    <style type="text/css">
      body {
        padding-top: 60px; /* 60px to make the container go all the way to the bottom of the topbar */
      }
    </style>
    <!-- Le HTML5 shim, for IE6-8 support of HTML5 elements -->
    <!--[if lt IE 9]>
      <script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
    <![endif]-->

    <asp:ContentPlaceHolder ID="head" runat="server">
    </asp:ContentPlaceHolder>
</head>
<body>

    <div class="navbar navbar-inverse navbar-fixed-top">
      <div class="navbar-inner">
        <div class="container">
          <a class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse">
            <span class="icon-bar"></span>
            <span class="icon-bar"></span>
            <span class="icon-bar"></span>
          </a>
          <a class="brand" href="#">Test</a>
          <div class="nav-collapse collapse">
            <ul class="nav">
              <li class="active"><a href="#">Calendar</a></li>
              <li><a href="#">Boss Stuff</a></li>
              <li><a href="#contact">Contact</a></li>
            </ul>
          </div><!--/.nav-collapse -->
        </div>
      </div>
    </div>

    <form id="form1" runat="server">
    <div>
       <div class="container">
       <asp:ContentPlaceHolder ID="ContentPlaceHolder1" runat="server">

       </asp:ContentPlaceHolder>
    </div> <!-- /container -->

    </div>
    </form>
      <!-- Le javascript
    ================================================== -->
    <!-- Placed at the end of the document so the pages load faster -->
   <script type="text/javascript" src="http://code.jquery.com/jquery-1.9.0.min.js"></script>
    <script type="text/javascript" src="assets/js/bootstrap.min.js"></script>
</body>
</html>

每个页面的导航都是这样的:

   <div class="navbar navbar-inverse navbar-fixed-top">
      <div class="navbar-inner">
        <div class="container">
          <a class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse">
            <span class="icon-bar"></span>
            <span class="icon-bar"></span>
            <span class="icon-bar"></span>
          </a>
          <a class="brand" href="#">Test</a>
          <div class="nav-collapse collapse">
            <ul class="nav">
              <li class="active"><a href="#">Calendar</a></li>
              <li><a href="#">Boss Stuff</a></li>
              <li><a href="#contact">Contact</a></li>
            </ul>
          </div><!--/.nav-collapse -->
        </div>
      </div>
    </div>

我无法弄清楚我怎么能这样做,如果管理员请求页面,添加Boss Stuff链接?

在会话管理方面,所有这一切都很好,我能够在我的代码中确定用户是否是管理员,我不知道的是如果他是管理员页面,如何添加老板链接负荷。

这可能是“最佳”或标准的练习方法吗?

由于

我的意思是,从字面上看,我如何从我的页面加载事件中添加指向导航的链接。我如何从CS转到aspx?

1 个答案:

答案 0 :(得分:0)

假设您正在使用.Net成员资格,如果您想在页面标记中执行此操作,可以执行一些简单的操作:

<% if (Page.User.IsInRole("Admin"))
   { %>
       <a href="#">Boss Stuff</a>
 <% } %>