asp.net sitemap简单使用详解

先创建sitemap文件,右击project->add new item,弹出选项框,选择site map,选择ok。好了sitemap文件就创建好了。

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

<?xml version="1.0" encoding="utf-8" ?>
<sitemap xmlns="http://schemas.microsoft.com/asp教程net/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 - 本地化用的(要在<sitemap>节点加上这个属性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-27 18:10:13

asp.net sitemap简单使用详解的相关文章

转:ASP.NET验证控件详解

asp.net|控件|详解 ASP.NET验证控件详解 ASP.NET是微软推出的下一代WEB开发工具,其强大的功能立即吸引了一大批WEB开发者投入它的靡下.现在,我们来看看ASP.NET的验证控件,感受ASP.NET的强大功能同时方便我们现在的WEB开发. WEB开发者特别是ASP开发者,一直对数据验证比较恼火,当你好不容易写出数据提交程序的主体以后,还不得不花大把时间去验证用户的每一个输入是否合法.如果开发者熟悉JavaScript或者VBScript,可以用这些脚本语言轻松实现验证,但是又

asp 内置对象 Application 详解

asp内置对象 Application 详解  在 ASP 的内建对象中除了用于发送.接收和处理数据的对象外,还有一些非常实用的代表 Active Server 应用程序和单个用户信息的对象.  让我们先来看看 Application 对象.在同一虚拟目录及其子目录下的所有 .asp 文件构成了 ASP 应用程序.我们非但可以使用 Application 对象,在给定的应用程序的所有用户之间共享信息,并在服务器运行期间持久的保存数据.而且,Application 对象还有控制访问应用层数据的方法

asp 内置对象 Application 详解_ASP基础

asp内置对象 Application 详解  在 ASP 的内建对象中除了用于发送.接收和处理数据的对象外,还有一些非常实用的代表 Active Server 应用程序和单个用户信息的对象.  让我们先来看看 Application 对象.在同一虚拟目录及其子目录下的所有 .asp 文件构成了 ASP 应用程序.我们非但可以使用 Application 对象,在给定的应用程序的所有用户之间共享信息,并在服务器运行期间持久的保存数据.而且,Application 对象还有控制访问应用层数据的方法

java_object的简单使用详解_java

就我们所知道的,java中有子类和父类,子类由于继承父类而形成,那么父类还有没有父类呢?答案是有了,父类的父类就是object类,一切父类都继承了它,那么根据继承的属性,每一个子类都有一个object类,然而,我们不是蒙目地去继承它,继承它是有目的的,我们要使用里面定义的方法,object里面定义了很多方法,详情参考API帮助文档,下面我介绍object里面两种方法,继承而来的方法往往是需要我们重写的. 第一.比如里面的比较方法,用来比较两个对象的地址是否相等,实际比较地址是哈希地址,而这开发中

ASP实例之计数器程序详解

程序|计数器|详解   Active Server Pager(动态服务器主页,简称ASP),通过读写服务器的文件,结合script语言(VBscript或Jscript)和html码可以方便地实现页面计数器功能.现流行的ASP教材和网络上的ASP教程都谈到过ASP计数器的设计问题,但是都过于简单,比如没有提到怎样实现计数器脚本和主页面的分离以及图象计数器的实现等.下面就作者为单位制作NT web站点的经验,举实例循序渐进谈谈关于ASP计数器的设计,希望能给ASP的初学者和对ASP WEB编程有

ASP开发中存储过程应用详解

存储过程|详解 ASP与存储过程(Stored Procedures)的文章不少,但是我怀疑作者们是否真正实践过.我在初学时查阅过大量相关资料,发现其中提供的很多方法实际操作起来并不是那么回事.对于简单的应用,这些资料也许是有帮助的,但仅限于此,因为它们根本就是千篇一律,互相抄袭,稍微复杂点的应用,就全都语焉不详了. 现在,我基本上通过调用存储过程访问SQL Server,以下的文字都是实践的总结,希望对大家能有帮助. 存储过程就是作为可执行对象存放在数据库中的一个或多个SQL命令. 定义总是很

ASP.NET的跟踪模式详解

asp.net|详解 [摘要]ASP.NET的跟踪功能比ASP有了很大的提高,通过跟踪信息有利于判断WEB应用程序中错误的根源.本文通过实例详细解释了ASP.NET的跟踪模式. [关键字]ASP.NET:跟踪信息:Trace 1.引言 传统ASP最常用的调试方法是使用Response.Write来设置断点,在WEB页面上显示出某些变量当时的值.但是,这种方法存在不少问题. (1)在程序中布满Response.Write语句,这些语句可能反而影响调试,也会影响页面的布局. (2)调试结束后,还要痛

asp.net 各种页面缓存详解

asp教程.net 各种页面缓存详解 实现     要实现页面输出缓存,只要将一条 OutputCache 指令添加到页面即可.     <%@ OutputCache Duration="60" VaryByParam="*" %>     如同其他页面指令一样,该指令应该出现在 ASPX 页面的顶部,即在任何输出之前.它支持五个属性(或参数),其中两个是必需的.     Duration     必需属性.页面应该被缓存的时间,以秒为单位.必须是正整

ASP中FormatDateTime函数用法详解

FormatDateTime 函数 返回表达式,此表达式已被格式化为日期或时间. FormatDateTime(Date[, NamedFormat]) 参数 参数 描述 date Required. Any valid date expression (like Date() or Now()) 必选项.要被格式化的日期表达式.(如Date()或Now()) format Optional. A Format value that specifies the date/time format