ASP.NET2.0自动搜索文件组成导航系统

asp.net|导航

  ASP.NET2.0的导航系统确实给web开发带来方便,但是用过的用户就会发现导航系统有一个很大的缺陷:他需要你手工编写web.sitemap,web.sitemap的语法用语句流行话是“相当的简单”,但是实际运用时,虽然简单,但是稍微复杂的导航,你肯定出错。为什么?下面是一个简单的sitemap,

<siteMap>
  <siteMapNode title="Home" url="~/default.aspx" >
    <siteMapNode title="Introduction to ASP.NET" url="~/introduction/default.aspx">
    <siteMapNode title="What's New in Whidbey?" url="~/introduction/whatsnew.aspx"/>
      <siteMapNode title="Sample Applications (Starter Kits)" url="~/introduction/starterkits.aspx"/>
      <siteMapNode title="Introduction to Visual Web Developer" url="~/introduction/vwd.aspx"/>
    </siteMapNode>
    <siteMapNode title="Building A Web Application" url="~/development/default.aspx">
      <siteMapNode title="Building a Simple Application" url="~/development/simple/default.aspx">
        <siteMapNode title="Introduction to ASP.NET pages" url="~/development/simple/pages.aspx"/>
        <siteMapNode title="Introduction to Server Controls" url="~/development/simple/servercontrols.aspx"/>
        <siteMapNode title="Inline vs Code Behind Pages" url="~/development/simple/codeseparation.aspx"/>
        <siteMapNode title="Sharing Code Between Pages" url="~/development/simple/codedirectory.aspx"/>
      </siteMapNode>
</siteMap>

    说白了,他只是一些siteMapNode 的嵌套,但是嵌套的开闭呼应对人而言,绝对是一个烦点,但是对计算机来说,就喜欢处理这些简单的关系,所以我们可以编写一个文件,让系统自动检索当前应用程序的页面并自动生成导航。

  miclae就写了一篇文章,我已经将他用C#改写并编译为DLL文件,现在 你只要把该DLL文件拷贝到你项目的bin目录下。并设置导航控件(menu,treeview)为引用该DLL,运行时,系统将自动根据你的目录文件自动生成导航系统。

  当然,该DLL文件的功能远远不只这些,他会自动去掉APP_*和bin目录,如果你愿意,你完全可以在web.config里配制他,告诉dll 不要把某个目录进行现实等。

  现在你在添加/删除文件时,再也不用修改web.sitemap

时间: 2024-10-28 02:05:40

ASP.NET2.0自动搜索文件组成导航系统的相关文章

ASP.NET 2.0自动搜索文件组成导航系统

ASP.NET2.0的导航系统确实给web开发带来方便,但是用过的用户就会发现导航系统有一个很大的缺陷:他需要你手工编写web.sitemap,web.sitemap的语法用语句流行话是"相当的简单",但是实际运用时,虽然简单,但是稍微复杂的导航,你肯定出错.为什么?下面是一个简单的sitemap, <siteMap> <siteMapNode title="Home" url="~/default.aspx" > <

ASP.NET2.0实现网站的自动升级

asp.net 网站的自动升级主要是要实现从一台服务器上下载某些文件到本服务器上,然后对下载下来的文件进行更新等操作. 比如,现在有服务器A,服务器B和客户端C. 作为COM公司开发的产品DIV网站系统被安装到服务器B上,而它的更新设置及更新文件则在服务器A上.当客户C访问服务器B的网站时,B从A上下载更新文件,然后进行更新操作. 其中虽然第四步最重要,是逻辑的核心,但是下载什么文件,怎么下载也捆饶着我们. 这里介绍的ASP.NET2.0是VB.NET.VB.NET 引入了一个新的命名空间 --

ASP.NET2.0:页面中链入的CSS、js文件带中文时需注意_实用技巧

当定义的样式中有中文时,如 .sometyle {font-family:@黑体;},如果书写不正确,如写成 .sometyle {font-family: 黑体;},这应该是个错误的写法,这样不仅这个样式不起作用,而且还会影响到定义在它后面的样式起作用,不知道对css的解析本来就是这个规则,还是ASP.NET 2.0的问题. 当你直接把从网上download下来的js文件加入的VS2005项目中时,如果此文件中带中文,当你调用其方法时,就会出现对象找不到的js错误,就像你没有链如该文件一样.你

ASP.NET2.0数据操作之母板页和站点导航

asp.net|导航|数据|站点 导言 通常,用户友好的个性化站点都有着一致的,站点统一的页面布局和导航体系.Asp.net 2.0引入的两个新特性给我们在统一站点的页面布局和站点导航上提供了简单而有效的工具,它们是母板页和站点导航.母板页允许开发者创建统一的站点模板和指定的可编辑区域.这样,aspx页面只需要给模板页中指定的可编辑区域提供填充内容就可以了,所有在母板页中定义的其他标记将出现在所有使用了该母板页的aspx页面中.这种模式允许开发者可以统一的管理和定义站点的页面布局,因此可以容易的

使用ASP.Net2.0国际化你的网站祥解

这个功能其实大家早就知道了,现在由于有一个项目要用到这个技术,所以又去全面一些的查找了一下.自己纪录一下,方便于以后查找使用吧.        创建可有多种语言版本的 Web 应用程序在 ASP.NET 2.0 版以前是一项复杂的任务.如果您使用资源文件 (RESX) 及 ResourceManager,则需要手动分离出可本地化的元素,并执行自己的资源加载过程,这需要花费您很多的精力并需要编写大量的代码.ASP.NET 2.0 版大大简化了此过程,并且增加了很多功能,如: 对客户端浏览器发送的接

ASP.NET2.0应用的全球化与本地化之本地化

asp.net 摘要:本文将通过一个实际案例来详细剖析如何实现一个ASP.NET 2.0网站开发过程中的全球化与本地化问题. 一.简介 全球化和本地化是每一位开发者在创建全球化产品或应用程序时必须清楚的两个重要的慨念.尽管有许多文章对这个题目作过较好的解释,但是我一直没有看到一篇全面而综合地讨论关于全球化/本地化的所有重要概念的文章.本文旨在通过一个具体案例来详细分析使用ASP.NET2.0开发一个web应用程序时所涉及到的全球化问题. 二.背景理论 全球化是应用程序开发中某一阶段的任务,其目的

原创:在ASP.NET2.0中实现主页嵌套

asp.net|原创 现在的很多商业公司都设有不同的部门,而这些部门在公司的网站上都有自己的子网站.一般情况下,每一个部门都会根据自己的需要来维护各自的网站.这样做虽然会使公司的网站显得丰富多彩,但这却会对用户的访问带来不便,也就是说,由于各个部门的子网站没有保持一致性而使用户在浏览网站时造成了困难.幸运的是,ASP.NET2.0为我们提供了一种解决方案,这就是主页嵌套. <?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:

Asp.Net2.0中实现多任务异步页的一点提示

asp.net|异步     如果想学习Asp.Net2.0的异步页技术,那么一定要仔细阅读http://www.microsoft.com/china/MSDN/library/default.mspx?mfr=true,并且下载它的源代码仔细揣摩.全文共介绍了3种实现异步页的编程模型,且功能一种比一种强大.多余的我就不多说了,直接看最后一种模型:使用PageAsyncTask类.RegisterAsyncTask方法.ExecuteRegisteredAsyncTasks方法和Timeout

Asp.net1.0升级至ASP.NET2.0十个问题总结

asp.net|问题 这几天升级了一下原来的1.1项目,发现了一些问题,总结一下放在这里,也提醒还没有来得及升级或准备升级的朋友,升级的过程中少走弯路,少浪费时间. 1.Global.asax文件的处理形式不一样 转化后将出现错误,在vs2003中Global.asax具有代码后置文件,2.0下, 将代码分离文件移到 App_Code 目录下,以便使其自动变为可通过应用程序中的任意 ASP.NET 页面访问."Code-behind"属性将从 ASAX 文件的指令中删除.vs2005则