asp.net中sitemap的简单实用【转载】

环境:vs2008

  首先创建sitemap文件,右击project->Add new item,弹出选项框,选择Site Map,选择Ok。好了sitemap文件就创建好了。

  下面开始编辑它的内容,新建的sitemap文件中默认内容如下:

以下是代码片段: <?xml version="1.0" encoding="utf-8" ?>  <siteMap xmlns="http://schemas.microsoft.com/AspNet/SiteMap-File-1.0%22 >  <siteMapNode url="" title="" description="">  <siteMapNode url="" title="" description="" />  <siteMapNode url="" title="" description="" />  </siteMapNode>  </siteMap>

 <siteMapNode>

  的属性:

  Url - 链接地址

  Title - 显示的标题

  Description - 描述(ToolTip)

  resourceKey - 本地化用的(要在

  节点加上这个属性enableLocalization=true)

  securityTrimmingEnabled - 是否让sitemap支持安全特性

  roles - 哪些角色可以访问当前节点,多角色用逗号隔开(需要将securityTrimmingEnabled设置为true)

  siteMapFile - 引用另一个sitemap文件

  注:应用权限的时候,Web.config中的SiteMap节点的Provider也要有相对应的配置(securityTrimmingEnabled="true")

  例:

以下是代码片段: <siteMapNode url="" title="" description="" roles="Administrator,Manager,NormalUser">  <siteMapNode url="~/Admin/ManageUser/Manage_Users.aspx" title="Manage Users" description="" roles="Administrator" />  <siteMapNode url="~/Admin/HotelInfo/Manage_Hotels.aspx" title="Manage Hotels" description="" roles="Manager"/>  <siteMapNode url="~/Admin/RegionInfo/Region_List.aspx" title="Manage Regions" description="" roles="Administrator"/>  <siteMapNode url="~/Admin/ManageTable/Manage_SelfDetails.aspx" title="Manage Tables" description="" roles="NormalUser"/>

 其中roles是需要进行设置的,可在每个目录下的web.config中设置。

接下来在web.config中配置sitemap,

以下是代码片段: <siteMap defaultProvider="SiteMapProvider">  <providers>  <add name="SiteMapProvider"  type="System.Web.XmlSiteMapProvider"  securityTrimmingEnabled="true"  siteMapFile="Web.sitemap"/>  </providers>  </siteMap>

最后在MasterPage中应用sitemap,

以下是代码片段: <asp:Menu ID="Menu1" runat="server" DataSourceID="SiteMapDataSourceDefault" Orientation="Horizontal">  <StaticMenuItemStyle ForeColor="White" ItemSpacing="10px" Font-Underline="false"/>  <StaticSelectedStyle ForeColor="#99FFFF" />  <DynamicSelectedStyle ForeColor="#99FFFF" />  </asp:Menu>  <asp:SiteMapDataSource ID="SiteMapDataSourceDefault" runat="server" SiteMapProvider="SiteMapProvider" ShowStartingNode="false"/>
时间: 2024-11-10 01:48:30

asp.net中sitemap的简单实用【转载】的相关文章

Mac中Git的简单实用(6) --- 分支管理策略

今天我来介绍下Git,Git是一款免费.开源的分布式版本控制系统. 我们在上一个学习了Git分支冲突管理. 这一章,我们要学习Git的Fast-forward模式.保存恢复现场 .测试的feature分支. Mac中Git的简单实用(1) - Git基本命令(1) Mac中Git的简单实用(2) - Git基本命令(2) Mac中Git的简单实用(3) - Github远程仓库 Mac中Git的简单实用(4) - 分支branch管理 Mac中Git的简单实用(5) - Git分支冲突管理 1.

ASP.NET中IsPostBack详解(转载)

1.IsPostBack介绍Page.IsPostBack是一个标志:当前请求是否第一次打开. 调用方法为:Page.IsPostBack或者IsPostBack或者this.IsPostBack或者this.Page.IsPostBack,它们都等价. 1)当通过IE的地址栏等方式打开一个URL时是第一次打开, 当通过页面的提交按钮或能引起提交的按钮以POST的方式提交的服务器时,页面就不再是第一次打开了.(每点击一次按钮,都是一次加载) 2)IsPostBack只有在第一次打开的时候是fal

多线程(三) java中线程的简单使用

============================================= 原文链接:多线程(三) java中线程的简单使用 转载请注明出处! ============================================= java中,启动线程通常是通过Thread或其子类通过调用start()方法启动. 常见使用线程有两种:实现Runnable接口和继承Thread.而继承Thread亦或使用TimerTask其底层依旧是实现了Runnabel接口.考虑到java的

Asp.net中的HttpModule和HttpHandler的简单用法

在Asp.net中,HttpModule和HttpHandler均可以截取IIS消息进行处理,这使得我们制作人员能够非常方便的进行诸如图片水印添加,图片盗链检查等功能. 下面先就HttpModule的使用方法进行简单说明: using System;using System.Web; namespace MyWebApp{ public class MyHttpModule:IHttpModule { public void Init(HttpApplication application) {

ASP.NET中登录功能的简单逻辑设计

 ASP.NET中登录功能的简单逻辑设计                               概述                               逻辑设计                               1.接收参数                               2.判断参数合法性                               3.访问数据库                               4.保存Session     

简单实用的启动脚本文件(更新中)

原来工作遇到的脚本,记下来几个,感觉很有用: 1 # Some shotcuts of the shells 2 # .startsh 3 # 4 # User specific aliases and functions 5 # 6 alias ..='cd ..' 7 alias ...='cd ../..' 8 alias cls=clear 9 alias ll='ls -al' 10 alias grep='grep -n' 11 alias net='netstat -n|grep'

ASP.net中导出Excel的简单方法介绍

下面介绍一种ASP.net中导出Excel的简单方法 先上代码:前台代码如下(这是自己项目里面写的一点代码先贴出来吧) <div id="export" runat="server" style="width: 700px; margin-left: auto; margin-right: auto;"> <!--startprint--> <table width="100%" border=&

ASP.NET 中对大文件上传的简单处理

ASP.NET 中对大文件上传的简单处理 在 ASP.NET 开发的过程中,文件上传往往使用自带的 FileUpload 控件,可是用过的人都知道,这个控件的局限性十分大,最大的问题就在于上传大文件时让开发者尤为的头疼,而且,上传时无法方便的做到多线程的操控和上传进度的显示.笔者在此给大家推荐一款简单易用的上传组件,从而快速便捷得解决了 ASP.NET 中的大文件上传问题. 首先,我们需要下载这个名为 RanUpLoad 的组件,可以去我的百度云盘下载: http://pan.baidu.com

ASP.NET中JSONP的两种实现以及其他跨域解决方案的简单实现

ASP.NET中JSONP的两种实现以及其他跨域解决方案的简单实现  jQuery中JSONP的两种实现方式: 都很简单,所以直接上代码! 前台代码如下: <script type="text/javascript"> $(function () { alert("start..."); // 第一种方式 $.ajax({ type: "get", url: "http://localhost:9524/Home/Proce