config -导航
在config进行中配置
1在config中添加SITmap
<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>
<!--SecurityTrimmingEnabled 获取一个布尔值,该值指示站点地图提供程序是否根据用户的角色筛选站点地图节点。-->
</system.web>
2)添加sitmap
<siteMap xmlns="http://schemas.microsoft.com/AspNet/SiteMap-File-1.0" >
<siteMapNode title="后台管理" roles="管理员,客服,财务">
</siteMapNode>
<siteMapNode title="商品管理" roles="管理员">
<siteMapNode url="~/Admin/ProductsCategory.aspx" title="商品分类">
<siteMapNode url="~/Admin/NewProductCategory.aspx" title="添加商品分类" /> roles表示可以访问的用户
</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>
3)在模板页中添加treeview
<%@ Master Language="C#" MasterPageFile="~/Masters/Site.Master" AutoEventWireup="true" CodeBehind="AdminMaster.master.cs" Inherits="WebApplication1.AdminMaster" %>
<asp:Content ID="Content1" ContentPlaceHolderID="head" runat="server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolderSiteContent" runat="server">
<div id="leftContent" class="left">
<div id="category" class="margintop">
<div class="line1">
</div>
<div class="line2">
</div>
<div class="line3">
</div>
<div class="lineleftright">
<div class="tittle">
用户菜单</div>
<div class="whiteback">
<%-- <ul>
<li><a href="#">用户及角色管理</a> </li>
<li><a href="#">公告管理</a> </li>
<li><a href="#">分类管理</a> </li>
<li><a href="#">商品管理</a> </li>
<li><a href="#">会员管理积分类型定义</a> </li>
<li><a href="#">收款银行及帐号信息</a> </li>
<li><a href="#">物流快递途径定义</a> </li>
<li><a href="#">评论审核</a> </li>
<li><a href="#">促销定义</a> </li>
<li><a href="#">商品评分项定义</a> </li>
<li><a href="#">销售统计</a> </li>
</ul>--%>
<asp:TreeView ID="TreeView1" runat="server" DataSourceID="SiteMapDataSource1"
ShowLines="True" ImageSet="Simple" NodeIndent="10">
<HoverNodeStyle Font-Underline="True" ForeColor="#DD5555" />
<NodeStyle Font-Names="Verdana" Font-Size="8pt" ForeColor="Black"
HorizontalPadding="0px" NodeSpacing="0px" VerticalPadding="0px" />
<ParentNodeStyle Font-Bold="False" />
<SelectedNodeStyle Font-Underline="True" ForeColor="#DD5555"
HorizontalPadding="0px" VerticalPadding="0px" />
</asp:TreeView>
<asp:SiteMapDataSource ID="SiteMapDataSource1" runat="server"
ShowStartingNode="false"
SiteMapProvider="AdminSiteMapProvider" />
SiteMapProvider="AdminSiteMapProvider指向定义的站点地图
<br />
</div>
</div>
<div class="line3">
</div>
<div class="line2">
</div>
<div class="line1">
</div>
</div>
<div style="clear:both">
</div>
</div>
<div id="rightContent" class="right">
<asp:ContentPlaceHolder ID="ContentPlaceHolderAdminContent" runat="server">
</asp:ContentPlaceHolder>
</div>
</asp:Content>
config -导航的更多相关文章
- WLST 命令和变量
下列部分将详细描述 WLST 命令和变量.主题包括: WSLT 命令类别概述 浏览命令 控制命令 部署命令 诊断命令 编辑命令 信息命令 生命周期命令 节点管理器命令 树命令 W ...
- sencha touch 类的使用
sencha touch 有一套自己的类机制,可以以面向对象的方式去写代码,封装业务逻辑,sencha touch 的组件.插件.api等都建立在这一套类机制的上面 在实际开发中,我们需要遵循这一套机 ...
- struts2学习之旅三 权限管理和导航设计
1,权限管理的db设计和dao实现,尽量简单快速有效: db的设计如下:权限按照角色来赋给用户: 权限对应每一个具体的功能,有菜单级别的,有导航级别的,还有页面级别的功能: 涉及到权限的敏感操作一般都 ...
- 纯css实现二级导航菜单效果,通过简单的鼠标事件操作页面元素样式变换实现二级导航菜单的功能,非常简单实用,
HTML代码如下 <!-- 头部导航栏开始--><div id="nav"><dl class="sy"><dt> ...
- “眉毛导航”——SiteMapPath控件的使用(ASP.NET)
今天做网站的时候,用到了SiteMapPath控件,我把使用方法记录下来,以便日后查阅以及帮助新手朋友们. SiteMapPath”会显示一个导航路径(也称为痕迹导航或眉毛导航),此路径为用户显示当前 ...
- 《Entity Framework 6 Recipes》中文翻译系列 (23) -----第五章 加载实体和导航属性之预先加载与Find()方法
翻译的初衷以及为什么选择<Entity Framework 6 Recipes>来学习,请看本系列开篇 5-2 预先加载关联实体 问题 你想在一次数据交互中加载一个实体和与它相关联实体. ...
- 《Entity Framework 6 Recipes》中文翻译系列 (26) ------ 第五章 加载实体和导航属性之延缓加载关联实体和在别的LINQ查询操作中使用Include()方法
翻译的初衷以及为什么选择<Entity Framework 6 Recipes>来学习,请看本系列开篇 5-7 在别的LINQ查询操作中使用Include()方法 问题 你有一个LINQ ...
- 《Entity Framework 6 Recipes》中文翻译系列 (27) ------ 第五章 加载实体和导航属性之关联实体过滤、排序、执行聚合操作
翻译的初衷以及为什么选择<Entity Framework 6 Recipes>来学习,请看本系列开篇 5-9 关联实体过滤和排序 问题 你有一实体的实例,你想加载应用了过滤和排序的相关 ...
- 《Entity Framework 6 Recipes》中文翻译系列 (28) ------ 第五章 加载实体和导航属性之测试实体是否加载与显式加载关联实体
翻译的初衷以及为什么选择<Entity Framework 6 Recipes>来学习,请看本系列开篇 5-11 测试实体引用或实体集合是否加载 问题 你想测试关联实体或实体集合是否已经 ...
随机推荐
- mybaitis配置信息
在配置mybatis当中,jdbcType的名称要大写,时间类型DATE只能传入年月日,要想传入时分秒,应该使用TIMESTAMP http://www.blogjava.net/hello-yun/ ...
- 常用笔记: 与VBS当中的Mid()类似的substr()小记
VBS当中有Mid函数,一般形式为:Mid(str,start,len) 对应于JS就类似于:str.substr(start,len) 不过区别的是:VBS中start从1开始,而JS从0开始. ...
- Java之工厂模式
interface Fruit { void eat(); } class Apple implements Fruit { public void eat() { S ...
- Latex beamer
使用明体(gbsn)和楷体(gkai)两种字型.以下的编程是一开始的宣告,并自动生成第一张封面投影片. \documentclass[cjk]{beamer}\usepackage{CJKutf8}\ ...
- java——%
%; //结果为1 %; //结果为-1 ; //结果为1.2000000000000002
- 转: javascript模块加载框架seajs详解
javascript模块加载框架seajs详解 SeaJS是一个遵循commonJS规范的javascript模块加载框架,可以实现javascript的模块化开发和模块化加载(模块可按需加载或全部加 ...
- windows中使用Git工具连接GitHub(配置篇)
Git在源码管理领域目前占很大的比重了,而且开源的项目很多都转到GitHub上面了.例如:jQuery, reddit, Sparkle, curl, Ruby on Rails, node.js, ...
- 用auto_ptr类模板帮助动态内存管理
动态内存使用最多的是在C++应用程序的代码中.有过编程经验的程序员虽然都知道new操作符的使用一定要与delete匹配,在某些场合仍然可能有内存溢出.当异常被掷出时,程序的正常控制流程被改变,因此导致 ...
- C# 关于数据类型转换
1.强制转换; 需要注意的一个是char不能强制转化成int,如果使用强制转化,得到的是原整数的ASCII码值.该方式对于浮点数会做无条件舍去,失去精确度. 2.利用方法: 类型.Parse(stri ...
- connot find one or more components. please reinstall the application
正在用 Visual Studio 2013 写程序,程序一直执行正常. 此时,手动把注册表"HKEY_USERS"的当前用户的权限删除.再运行程序会提示:“是否继续并运行上次的成 ...