简介:关于对不知道怎么写等于站点论文范文课题研究的大学硕士、相关本科毕业论文等于站点论文开题报告范文和文献综述及职称论文的作为参考文献资料下载。
李强强,张先球
(兰州石化通信网络中心,兰州730060)
摘 要: 在以往的网站开发中,网站导航的实现是以大量代码的重写和很高的维护成本为代价的,随着动态网页技术的进一步的发展和Web 2.0 时代的到来,以及ASP.NET 2.0 的推出,网站导航模块的实现从原来的大量的代码重写中解放了出来,结构更加清晰,开发的成本更低,维护也更加简单了.本文主要分析和介绍ASP.NET 2.0 中网站导航是如何实现的.
关键词: 网站导航;网站地图; 模板页
1.前言
在开发Web 应用程序的时候,网站导航是一件必须要做的事情,在ASP.NET 2.0 以前,人们主要通过客户端控件(user control),include pages 文件和添加链接(hyperlinks) 来实现网站的导航,这种技术最大的缺点是当其中的一些页面(pages) 有变动的时候,则要到导航页面逐个修改代码,这就大大降低了网站的开发效率,同时也增加了网站后期维护的成本和难度.ASP.NET 2.0 的推出,则解决了上述的缺点和难点,给网站导航的实现提供了可行的技术.
2.系统构成
(1) 网站地图(Site maps):网站地图可以是一个xml 文件或者是自定义数据库表,它用来描述站点地图的逻辑结构.当添加或者删除页面时只需修改网站地图(xml 文件或者数据库表) 而不是修改所以网页的超链接.
(2) ASP.NET 控件:使用ASP.NET 控件在网页上显示导航菜单,主要有SiteMapPath,TreeView,Menu 控件.导航菜单是以站点地图为数据基础来显示的.
(3) 可编程控件(Programmatic controls):主要用来以代码方式使用ASP.NET 站点导航,以创建自定义导航控件或修改在导航菜单中显示的信息的位置.
(4) 访问规则(Access rulers):用来配置在导航菜单中显示或隐藏链接的访问规则.
(5) 站点地图提供程序(site-map providers):用来创建自定义站点地图提供程序,以便使用自定义的站点地图(如存储链接信息的数据库),并且集成到ASP.NET 站点导航系统.
3.工作原理
首先将所有的站点页面配置为基础访问点,并且根据访问点的级别建立树形结构;然后根据网站的访问规则建立访问点之间的关系,并且使用可继承的关系,这样就可以建立起网站页面为单位的有向图结构.
site.map 用来保存站点的树形结构.
custom data Store 则用来保存访问规则的有向图.使用两个控件来分别显示树形结构的站点地图和有向图结构的访问规则向导.
3.1创建网站地图网
站地图是网站导航系统的数据基础,其他的操场都是在此基础上进行的.ASP.NET 下默认的是命名为site.map 的 xml 格式文件,也可以是自定义的DataBase 数据表.
3.2 站点地图加载进程
默认的ASP.NET 站点地图提供程序System.Web.Xml原 SiteMapProvider 加载站点地图数据作为XML 文档,并在应用程序启动时将其作为静态数据进行缓存,更改站点地图文件时,ASP.NET 会重新加载站点地图数据.自定义的站点地图需要重写System.Web.SiteMapProvider 来实现站点地图的加载.
3.3 站点导航控件完成ASP.NET 站点导航的站点地图的加载后,接下来需要在页面里展示导航结构,这样用户就可以根据站点结构在站点内轻松地浏览.ASP.NET 中导航控件包括:siteMapPath、 TreeView 和Menu.
(1) SiteMapPath 此控件显示导航路径,向用户显示当前页面的位置,并以链接的形式显示返回主页或者上一级的路径.用户可以清楚自己在哪个页面中,不至于迷失,也可以轻松地通过此控件返回到上一级.
(2) TreeView 此控件显示导航结构的一个树状结构或菜单,用户通过此控件可以遍历访问站点中的不同页面,用户也可以单击包含子节点的节点,可将树状结构其展开或折叠.
(3) Menu 此控件显示一个可展开的菜单,用户通过此控件可以遍历访问站点中的不同页面.当用户用鼠标悬停在包含子菜单的父菜单上时,子菜单将展开包含的子菜单.
3.4 站点导航API
通过导航控件API实现访问规则,只需编写极少的代码甚至不需要代码,就可以在页面中添加站点导航,也能以编程的方式处理站点导航.当Web 应用程序运行时,ASP.NET 公开一个反映站点地图结构的SiteMap 对象.SiteMap 对象的所有成员均为静态成员.而SiteMap 对象会公开SiteMapNode 对象的集合,这些对象包含地图中每个节点的属性.
3.5 站点导航体系结构图
图1 示意了ASP.NET 站点导航组件之间的关系.
实现过程
4.1 新建网站并添加web.sitemap 文件
4.1.1 添加web.sitemap 文件
在Microsoft Visual Studio 2005 中,新建一个ASP.NET 网站,添加一个web.sitemap 文件,并且添加如下内容:
&,lt,xml version等于&,quot, 1.0&,quot, encoding等于&,quot, utf-8&,quot, &,gt,
&,lt,siteMap xmlns 等于 &,quot, http://schemas.microsoft.com/AspNet/
SiteMap-File-1.0&,quot, &,gt,
&,lt,siteMapNode url等于&,quot, ~/Default.aspx&,quot, title等于&,quot, 论文范文&,quot, de原
scription等于&,quot, 论文范文&,quot, &,gt,
&,lt,siteMapNode title等于&,quot, 产品介绍&,quot, url等于&,quot, ~/Products/ Prod原
uctsIntro.aspx&,quot, description等于&,quot, 产品介绍&,quot, &,gt,
&,lt,siteMapNode url等于&,quot, ~/Products/Lap论文范文.aspx&,quot, title等于&,quot, 笔
记本电脑&,quot, description等于&,quot, 笔记本电脑&,quot, /&,gt,
&,lt,siteMapNode url 等于 &,quot, ~/Products/Desk论文范文.aspx&,quot, title 等于 &,quot,
台式机&,quot, description等于&,quot, 台式机&,quot, /&,gt,
&,lt,/siteMapNode&,gt,
&,lt,siteMapNode title等于&,quot, 关于我们&,quot, url等于&,quot, ~/AboutMe.as原
px&,quot, description等于&,quot, 关于我们.&,quot, /&,gt,
&,lt,/siteMapNode&,gt,
&,lt,/siteMap&,gt,
可以看到,在web.sitemap 文件包含一个根结点siteMap,而且,设置了一个父siteMapnode 结点.该结点表明是默认的站点论文范文, 在该父sitemapNod 结点下, 可以有若干个子 sitemapNode 结点,这样就构成了整个网站的层次结构,每个节点代表了网站的各子栏目.
4.1.2 文件属性
在每一个sitemapNod 节点中,有如下若干个属性:
(1) URL 属性:该属性指出要导航的栏目的地址链接,必须是每个栏目的相对地址.
(2) Title 属性:该属性指出每个子栏目的名称,显示在页面中.
(3)Description属性:该属性指定时,则用户在鼠标移动到该栏目时,出现有关该栏目的相关提示,类似于tooltips 属性.
4.2 添加模板页面
4.2.1 模板页面
ASP.NET 2.0 为网站开发人员提供了一种在一个文件中定义多个网站页面布局的功能.这个以.master 为扩展名的文件,称之为母版页.单个母版页可以定义所有页面的相同外观和通用行为,因而开发人员无须在每个页面中编写重复的代码,并且在需要修改页面布局时只需修改母版页即可, 利用母版页,开发人员可以创建单个网页模板并在应用程序中将该模板用作多个网页的基础,这样就无需从头创建所有新网页,一个网站可以设置多种类型的母版页,以满足不同显示风格的需要.
4.2.2 添加模板(master) 页面
在添加完web.sitemap 文件后,再在新建的网站中添加一个名叫N论文范文igation 的master 类型的页面(N论文范文igation. master),然后向该页面中添加siteMapDataSource 控件,默认的ID 为 SiteMapDataSource1.该控件会自动感应绑定web.sitemap,以 xml 格式web.sitemap 为数据源.接下来就可以利用siteMap原 DataSource 和ASP.NET 控件treeview、menu、sitemappath 进行展示导航了.
在N论文范文igation.master 中添加两个控件treeview 和sitemap原 path,设置数据源为SiteMapDataSource1,代码如下:
&,lt,%@ Master Language等于&,quot, C#&,quot, AutoEventWireup等于&,quot, true&,quot,
CodeFile等于&,quot, MasterPage.master.cs&,quot, Inherits等于&,quot, MasterPage&,quot,
%&,gt,
&,lt,! DOCTYPE html PUBLIC &,quot, -//W3C//DTD XHTML 1.0
Transitional//EN&,quot, &,quot, http://www.w3.org/TR/xhtml1/DTD/
xhtml1-transitional.dtd&,quot, &,gt,
&,lt,html xmlns等于&,quot, http://www.w3.org/1999/xhtml&,quot, &,gt,
&,lt,head runat等于&,quot, server&,quot, &,gt,
&,lt,title&,gt,导航页面&,lt,/title&,gt,
&,lt,/head&,gt,
&,lt,body&,gt,
&,lt,form id等于&,quot, form1&,quot, runat等于&,quot, server&,quot, &,gt,
&,lt,div&,gt,
&,lt,asp:SiteMapDataSource ID 等于 &,quot, SiteMapData原
Source1&,quot, runat等于&,quot, server&,quot, /&,gt,
&,lt,asp:SiteMapPath ID 等于 &,quot, SiteMapPath1&,quot, runat 等于 &,quot,
server&,quot, &,gt,
&,lt,/asp:SiteMapPath&,gt,
&,lt,asp:TreeView ID等于&,quot, TreeView1&,quot, runat等于&,quot, server&,quot,
DataSourceID等于&,quot, SiteMapDataSource1&,quot, &,gt,
站点披萨:车站点A和B与初始发车站C的直线距离都等于akm,站点A在发车站C的北偏东20度,站点B在发
&,lt,/asp:TreeView&,gt,
&,lt,/div&,gt,
&,lt,div&,gt,
&,lt,asp:ContentPlaceHolder ID 等于 &,quot, ContentPlaceHold原
er1&,quot, runat等于&,quot, server&,quot, &,gt,
&,lt,/asp:ContentPlaceHolder&,gt,
&,lt,/div&,gt,
&,lt,/form&,gt,
&,lt,/body&,gt,
&,lt,/html&,gt,
4.2.3 添加其他页面
在完成了模板页面N论文范文igation.Master 后,就等于已经把网站的模版页建立起来了,接下来就可以新建Default.aspx 和 AboutMe.aspx 页面,以N论文范文igation.Master 为模板页面,再新建一个文件夹Products,在它下新建Lap论文范文.aspx、Desk论文范文.aspx、 ProductsIntro.aspx 页面,同样以N论文范文igation.Master 为模板页面,并且在每个页面的ContentPlaceHolder 中建立自己想要的内容.
可以看到,当建立了模版页后,就可以新建其他的子页面了,只需要在其中的contentplaceholderid 中写入不同的内容就可以了.
结果如图2 所示.
5.结语
本文介绍了在ASP.NET 2.0 中网站导航的体系结构和简单的实现方法,主要让读者来认识和体会ASP.NET 2.0 中是如何减少代码的编写和提高开发效率,简化代码介绍和分析.
作者简介
李强强,男(1981-),助理工程师,研究方向:软件开发.
张先球,男(1979-),助理工程师,研究方向:系统管理.
总结:这是一篇与等于站点论文范文相关的免费优秀学术论文范文资料,为你的论文写作提供参考。
站点披萨引用文献:
[1] 每个站点都有风景论文范文 每个站点都有风景类专科毕业论文范文2500字
[2] 查重查不到的论文站点
[3] 给一朵花披上温暖的外衣论文范文 给一朵花披上温暖的外衣相关毕业论文格式范文2500字