首页 > 编程 > .NET > 正文

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

2024-07-10 13:04:46
字体:
来源:转载
供稿:网友

  asp.net2.0的导航系统确实给带来方便,但是用过的用户就会发现导航系统有一个很大的缺陷:他需要你手工编写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

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表