asp.net sitemap
.net20里面有这么个个东东偶觉得哈有意思的。
但是本身提供的功能实在不够灵活。怎么说列,编写WEB.SITEMAP文件就够头疼的了,尤其对于一些动态且进行过SES的站来说确实不能实现需求。
但偶还是觉得SITEMAP真是个好东东,所以决定要解决这个问题,幸好MS提供了PROVIDER抽象类让我们来实现自己的实体代码。
BEGIN
SiteMapProvider 类 :为所有站点地图数据提供程序提供公共基类,并为开发人员提供一条实现自定义站点地图数据提供程序的途径,这些提供程序可与 ASP.NET 站点地图基础结构一起用作 SiteMap 对象的持久存储区。
public abstract class SiteMapProvider : ProviderBase
StaticSiteMapProvider 和 XmlSiteMapProvider 类表示抽象 SiteMapProvider 类的默认实现。XmlSiteMapProvider 使用名为 Web.sitemap 的 XML 文件来存储站点地图数据。有关 Web.sitemap 文件的更多信息,请参见 ASP.NET 站点地图。
SiteMapProvider 类通过声明 RootProvider 和 ParentProvider 属性,从而支持站点地图提供程序层次结构的概念。SiteMapProvider 可以是另一个提供程序的子提供程序或父提供程序。这样便可启用站点的不同内容区域由不同的开发组(各自维护着自己的站点地图和站点地图提供程序)拥有或实现的方案。
所有 SiteMapProvider 对象都是在 Web.config 文件中配置的。在这些配置文件中声明的任何站点地图提供程序都是在运行时加载的,并用于加载和处理站点导航数据。SiteMap 对象通过其 Providers 属性集合来跟踪所有可用的提供程序,从而提供以编程方式访问提供程序所管理的导航数据的权限。
SiteMapNode 类
public class SiteMapNode : ICloneable, IHierarchyData, INavigateUIData
SiteMapNode 对象表示站点地图结构中的一个网站页面。SiteMapNode 对象由静态 SiteMap 类使用一个或多个站点地图提供程序在运行时加载,从而将站点地图数据从永久存储区加载到内存中。SiteMapNode 对象由 SiteMapNodeItem 类包装以供 Web 服务器控件(如 SiteMapPath 控件)使用。
SiteMapNode 类包括几个用于描述网站中单个页(包括某一页)的属性,如 Url、Title 和 Description 属性;而 Url 属性由作为 ASP.NET 默认站点地图提供程序的 XmlSiteMapProvider 类使用,该类将这一属性作为内部集合的查找键,提供程序用这个查找键来跟踪节点。SiteMapNode 类支持一个基本的 Key 属性,站点地图提供程序使用该属性来跟踪节点。此外,Url 属性还由导航控件使用,以便呈现导航结构中页面的超链接。Title 属性是 SiteMapNode 的友好名称,通常与 Web 窗体的 HTML 标题相同,并由导航控件用于呈现简单的标签。最后,附加 Attributes 属性的 NameValueCollection 集合可供某些站点地图提供程序使用,这些提供程序使用 SiteMapNode 对象,但需要 SiteMapNode 基类中未提供的附加属性。
- 你的姓名:
- 你的网站:
- EMAIL:
- 评论内容:
- 私人

