ASP.NET 网站导航概览

news/2024/5/9 16:31:40/文章来源:https://blog.csdn.net/weixin_30575309/article/details/97509768

ASP.NET 网站导航特征可以为用户浏览网站的时候提供一致的导航方式。随着网站的发展,网站的页面会越来越多,链接的管理也开始变得更困难起来。ASP.NET 网站导航可以将页面链接集中存储到同一个位置,并在含有专用 Web 服务器控件的页面中以列表或导航菜单的形式进行呈现。

可以使用 ASP.NET 网站导航创建一致的,更易于管理的导航方案。ASP.NET 网站导航有下列特征:

  • 网站地图。网站地图用于描述网站的逻辑结构。可以通过在页面导航文件中添加或删除条目的方式管理页面的导航,并不需要在页面中手动修改。

  • ASP.NET 控件。使用 ASP.NET 控件在网站中显示导航菜单。导航菜单的处理基于网站地图文件。

  • 可编程控件。通过 ASP.NET 网站导航,开发可以在代码中创建自定义导航控件并更改显示在导航菜单中的路径信息。

  • 访问规则。可以对访问规则进行配置,显示或隐藏导航菜单中的链接。

  • 自定义网站地图提供者。创建自定义网站地图提供者可以与自定义后台网站地图数据(比如,某个用来保存链接信息的数据库)协同工作,并将自定义提供者植入 ASP.NET 网站导航系统中。

网站导航如何工作

开发者可以通过 ASP.NET 网站导航描述网站布局的层次化信息。比如,某个由 8 个页面组成的虚拟在线计算机存储系统,网站布局如下:

HomeProductsHardwareSoftwareServicesTrainingConsultingSupport

在使用网站导航之前需要先创建网站地图。当然也可以使用 XML 文件来描述层次化网站结构,同样可以使用其他的相关选项。

创建网站地图之后,就可以在 ASP.NET 页面中使用网站导航控件来显示导航结构。

网站地图的装载过程

默认的 ASP.NET 网站地图提供者以 XML 文件的方式装载网站地图数据,并在应用程序开始运行时将其作为静态数据进行缓存。超大的网站地图文件会在装载过程中消耗过多的内存和 CPU 时间。基于文件的 ASP.NET 网站导航特征会始终保持导航数据中持有最新的内容,一旦网站地图文件被更改,ASP.NET 就会重新装载新的网站地图数据。另外还需要确保没有任何病毒扫描软件更改网站地图文件的内容。

网站导航控件

创建反映网站结构的网站地图是 ASP.NET 网站导航系统的一部分。余下的部分就是在 ASP.NET Web 页面中显示导航结构,使用户更加容易地在网站中穿梭自如。使用下列 ASP.NET 导航控件可以简化导航系统的建立过程:

  • SiteMapPath。该控件显示导航路径,路径的内容被分隔符号进行分隔,用来显示用户使用的当前页面位置以及返回到主页的逆向路径。该控件还提供了若干选项来定制链接显示的外观。

  • TreeView。该控件显示树形结构或菜单信息,用户可以用于进行网站页面间的跳转。点击含有子目录的目录结点时会对其子目录内容的显示状态进行切换。

  • Menu。该控件显示成可展开式菜单,用户可以用于不同页面间的跳转。鼠标经过含有子菜单的菜单结点时会显示子菜单中的内容。

在先前介绍的在线计算机存储系统中,如果在 Training 页面中添加 SiteMapPath 控件,该控件将会显示出如下信息(Home 和 Services 以超链接形式呈现):

Home > Services > Training

使用 SiteMapPath 控件创建网站导航时不需要进行编码和显式的数据绑定操作。该控件会自动读取并呈现网站地图信息。但是,如果有必要,也可以编写代码来自定义 SiteMapPath 控件。

SiteMapPath 控件允许用户从当前页面跳转至更高层次的父级目录。但是,SiteMapPath 控件不允许从当前页面跳转至更深层次的子级目录。SiteMapPath 控件适合在新闻组或消息板块应用中使用,因为用户经常需要查看当前浏览页面的所在类别。

通过使用 TreeViewMenu 控件,用户可以查看子目录列表并直接导航到目标页面。与 SiteMapPath 不同的是,这些控件并不从网站地图中直接读取信息。另外,也可以在页面中添加 SiteMapDataSource 控件来读取网站地图信息。可以将 TreeViewMenu 控件与 SiteMapDataSource 控件进行绑定,自动呈现网站地图的内容。比如,TreeView 控件会显示出如下内容:

- Home- Services+ Training

注意:在网站中为所有页面同时使用 SiteMapPathTreeView,或 Menu 控件进行导航显示的一个简单方法就是创建使用这些控件的模板页。

网站导航 API

使用导航控件实现页面导航时只需要少量(甚至不需要)代码进行处理,但是也可以根据需要对网站导航进行编程。当 Web 应用运行时,ASP.NET 会暴露一个反映网站地图结构的 SiteMap 对象实例,该实例的所有成员都是静态的。接着暴露出包含有每个节点属性的 SiteMapNode 对象集合。(SiteMapPath 控件与 SiteMapStieMapNode 对象需联合使用以显示合适的链接信息。)

可以在代码中使用 SiteMapSiteMapNode,以及 SiteMapProvider 对象来进行网站地图结构的自由跳转或创建显示网站地图数据的自定义控件。网站地图的信息虽然不允许被写入,但是可以对对象实例中的网站地图节点信息进行更改。

网站导航组件之间的关系

下图说明了 ASP.NET 网站导航组件之间的关系。

网站导航对象之间的关系

转载于:https://www.cnblogs.com/Laeb/archive/2006/12/09/587282.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_856631.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

PHP curl 爬取反 爬的网站,请开启JavaScript并刷新该页.

总结 GET改成POST就好了 目标链接:http://www.pbc.gov.cn/zhengcehuobisi/125207/125213/125440/3876551/index.html 笔者查阅很多资料,大部分人说这样子需要模拟浏览器访问,根本原因是因为cookie不是动态生成的或者不是有效的,…

Web网站中从Sybase数据库读取的中文显示为乱码的解决方法

需要修改作为网站服务器的机器上的 Sybase 数据库 ODBC 数据源中的属性设置。如下图所示。(注:该机上安装的 Sybase 客户端版本为 12.5.0 ) 第一步,打开 ODBC 数据源管理器,选中已设置的系统 DSN : Sybase …

[关键词排名]提高新站排名的8个SEO建议

搜索引擎使用一个特定的算法,决定在搜索结果的第一页上出现哪些网页,这样用户就可以找到与他们的搜索相关的最佳结果。   对一个全新的网站进行排名是一项艰难的工作,但是遵循搜索引擎优化的指导方针,一个新的网站同样可以提高它…

【Python】不完善的批量网站运行检测小工具

使用tkinter制作了图形界面的小工具,主要是通过requests获取网站的状态码200,获取到其他的状态码则判定为运行异常。 1、可自行输入检测文件位置,.txt(文本格式,一行一个网址) 2、可自行输入谷歌驱动程序位…

不要再说SEO没出路了,SEO的十种赚钱方式让你走上小康

我深深的想要通过的自己的SEO技术赚钱。其实,掌握一门技术是次要方面,学会把技术变现才是重中之重,所以你说学习SEO重要吗?挺重要,但绝不是最重要的。学SEO的赚钱方式才是最重要的。 那么SEO都有哪些赚钱方式呢?我罗列了十种赚钱…

SEO为何见效那么慢,其实你对SEO理解都不一定对

SEO SEO和SEM最大的区别的就是除了资金投入外就是见效时间问题了,SEO优化的是一个循序渐进的过程,需要时间的积累和搜索引擎的检验。到现在为止仍然有很多对SEO没有一个正确的认知,也有很多人没搞清楚就入坑SEO行业了。 一、帮助老板正确认识…

利用好这些代码把SEO优化做到极致,最后一个你肯定没用

SEO 本期主题,利用好HTML代码让网站优化更上一层楼, 很多人认为网站优化和代码没有什么关系,其实不然,代码和优化也有着千丝万缕的关系。如果代码这一步不弄好也会影响后期的优化。尤其是最后一个还多网站都没做这一步 一、titl…

什么是黑帽SEO?

什么是黑帽SEO?黑帽SEO的作用是什么?做黑帽的方法又有哪些。现在的你是不是有许多相关的问号产生?从字面上理解,黑帽SEO指的是利用“违规”方式从事搜索引擎优化服务,说到黑帽SEO,我们会主观的以为黑帽就是…

一起来聊聊SEO的门槛高不高

之前Ourboke联盟曾讲过,自媒体博客门槛很低,也很高,这句话同样适用于搜索引擎(SEO)优化。SEO门槛很低,也很高,正如相声大师郭德纲说的那样,说相声门槛很低,也很高&#x…

SEO从业者该何去何从呢?

SEO到底还有没有前途?如果只是以百度平台为流量来源的传统SEO的话,基本没有前途了!不管你是2C业务还是2B业务。 尤其是新网站还想从百度获取免费自然SEO流量的话,那基本上废了。但是,如果你是以百度SEO平台为流量来源其…

转载:网站分析与SEO效果的评估

本文截取自:网站分析在中国 原文地址:http://www.chinawebanalytics.cn/use-web-analytics-to-evaluate-seo/ 对于一个网站而言,SEO(Search Engine Optimization,搜索引擎优化)的重要性不言而喻。搜索引擎带来的自然流量有几个好…

谷歌网站管理员工具竟然有提醒wordpress升级的功能

很久没有登录谷歌网站管理员工具了,今天登录发现有两条消息提醒标题竟然是《WordPress有更新》: 好奇下打开一看,原来是我几年前用国外的免费空间搭建的一个二级域名wordpress博客网站引起的。全文如下: 尊敬的 http://&#xff1…

MVC4网站发布到windows server 2003服务器

在windows server 2003上部署MVC4的网站,需要进行以下工作 用VS2013新建项目 在创建项目的时候选择的矿建为.NET Framework4,然后选择【ASP.NET MVC4 Web应用程序】 项目开发完成之后右键项目 选择【发布】 选择【新建配置文件】 填写自命名一个配置文件…

网站架构

摘要:何为大型网站大型网站特性既然说的是大型网站架构,那么架构的背后自然是解决人因面对大型网站特性而带来的问题。这样可以先给大家说下大型网站的特性,这些特性带来的问题就是人要解决的问题:高并发、大流量:PV .…

网站架构

摘要:何为大型网站大型网站特性既然说的是大型网站架构,那么架构的背后自然是解决人因面对大型网站特性而带来的问题。这样可以先给大家说下大型网站的特性,这些特性带来的问题就是人要解决的问题:高并发、大流量:PV .…

leaflet自定标签json_做一个好看的数据展示「小标签」,在个人网站实时展示你的粉丝数

如果你浏览过一些 GitHub 的开源项目,你一定见过很多 README 文档中都会出现的五颜六色、各式各样的「小牌子」。 最初,这些「小牌子」的主要作用是为了显示「某个 GitHub 项目」的「某种状态」,比如项目的编译是否成功、文档是否…

如何将vs2012项目的网站布置到iis上,实现内网访问

1首先获得你本机的ip地址 可以通过命令行输入 ipconfig/all 2配置电脑的iis(前提是你已经安装了) 右击我的电脑选择管理 右键网站添加网页 会出来上面的对话框 选择直接的项目web路径就ok ip地址和选自己的就行 端口随便选一个合法的。 有时候配置了出不…

php java session共享_PHP 实现多网站共享用户SESSION 数据解决方案

一、问题起源 稍大一些的网站,通常都会有好几个服务器,每个服务器运行着不同功能的模块,使用不同的二级域名,而一个整体性强的网站,用户系统是统一的,即一套用户名、密码在整个网站的各个模块中都是可以登录…

腾讯云服务器会自动备份吗,腾讯云服务器建站教程 – 定时快照备份和镜像备份的功能策略 | 老左笔记...

我们无论在使用哪家云服务器或者主机的时候,都需要做的就是数据备份。如果你技术能力一般的,那就用搬运办法FTP下载到本地,如果你技术能力可以的,那就可以用一键备份脚本到本地或者第三方服务器或者对象存储的方式。当然&#xff…

网站信息统计的简单实现过程

作者: pcskySQL语句如下: SELECT DD.SumHits, AA.CountArt, CC.WeekUpdate, BB.RegUserNumFROM(SELECT COUNT(newsid) AS CountArt FROM article) AA,(SELECT COUNT(id) AS RegUserNum FROM Admin) BB,(SELECT COUNT(newsid) AS WeekUpdate FROM(art…