zoukankan      html  css  js  c++  java
  • 今日学习心得:SiteMap设置以及在SiteMap中使用roles控制权限

    <?xml version="1.0" encoding="utf-8" ?>
    <siteMap xmlns="http://schemas.microsoft.com/AspNet/SiteMap-File-1.0" >
    <siteMapNode title="后台管理" roles="管理员,客服,财务">


    <siteMapNode title="客户管理" roles="管理员,客服">




    </siteMapNode>
    <siteMapNode title="商品管理" roles="管理员">
    <siteMapNode url="~/Admin/ProductsCategory.aspx" title="商品分类">
    <siteMapNode url="~/Admin/NewProductCategory.aspx" title="添加商品分类" />
    </siteMapNode>

    <siteMapNode url="~/Admin/Products.aspx" title="商品管理">
    <siteMapNode url="~/Admin/NewProduct.aspx" title="添加商品" />
    </siteMapNode>

    </siteMapNode>
    <siteMapNode title="订单管理" roles="管理员,财务">
    <siteMapNode url="~/Admin/Orders.aspx" title="所有订单">

    </siteMapNode>
    <siteMapNode url="~/Admin/Payment.aspx" title="收款管理" roles="财务">
    <siteMapNode url="~/Admin/PaymentToConfirm.aspx" title="待确认收款"/>
    <siteMapNode url="~/Admin/ConfirmPayment.aspx" title="确认收款"/>
    </siteMapNode>


    </siteMapNode>

    <siteMapNode title="咨询" roles="客服">
    <siteMapNode title="有待回答的咨询" url="~/Admin/Question.aspx" />
    <siteMapNode title="回答咨询" url="~/Admin/Answer.aspx" />


    </siteMapNode>

    <siteMapNode title="系统管理" roles="管理员">
    <siteMapNode title="用户和角色" roles="管理员">
    <siteMapNode url="~/Admin/Users.aspx" title="用户列表"></siteMapNode>
    <siteMapNode url="~/Admin/NewUser.aspx" title="添加用户"/>
    </siteMapNode>
    <siteMapNode url="~/Admin/Roles.aspx" title="角色管理">
    </siteMapNode>
    <siteMapNode title="基础数据维护">
    <siteMapNode url="~/Admin/Dic/Bank.aspx" title="银行开户帐号"/>
    </siteMapNode>

    </siteMapNode>

    </siteMapNode>
    </siteMap>

    web.config配置

          <siteMap enabled="true" defaultProvider="UserSiteMapProvider">

              <providers> 

                 <clear/> 

                 <add name="AdminSiteMapProvider" type="System.Web.XmlSiteMapProvider" siteMapFile="~/Sitemap/Admin.sitemap" securityTrimmingEnabled="true" />

                  <add name="UserSiteMapProvider" type="System.Web.XmlSiteMapProvider" siteMapFile="~/Sitemap/User.sitemap"/> 

             </providers>

          </siteMap>

    页面中使用:

                       <asp:TreeView ID="TreeView1" runat="server" DataSourceID="SiteMapDataSource1"                         ShowLines="True">

                        </asp:TreeView> 

                          <asp:SiteMapDataSource ID="SiteMapDataSource1" runat="server"                      ShowStartingNode="false"                        SiteMapProvider="AdminSiteMapProvider" />

    需要注意的事项:

    1.securityTrimmingEnabled="true" 表示按照当前用户的角色选择站点地图中的节点进行显示。如果设置了该属性为true,会查找不是叶子节点的节点对应的权限属性。如果当前登录用户的角色包括该节点所设置的属性,该节点会在treeview中显示。

    作者:于为源 出处: http://www.cnblogs.com/yuanyuan/
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
  • 相关阅读:
    Two Sum II
    Subarray Sum
    Intersection of Two Arrays
    Reorder List
    Convert Sorted List to Binary Search Tree
    Remove Duplicates from Sorted List II
    Partition List
    Linked List Cycle II
    Sort List
    struts2结果跳转和参数获取
  • 原文地址:https://www.cnblogs.com/yuanyuan/p/1952849.html
Copyright © 2011-2022 走看看