知识大全 ASP.NET基于XML导航栏的制作

Posted

篇首语:今日长缨在手,何时缚住苍龙。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 ASP.NET基于XML导航栏的制作相关的知识,希望对你有一定的参考价值。

ASP.NET基于XML导航栏的制作  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

  首先说明 本文为照顾刚入门的新手 有些地方可能会稍微说点基础的东西 高手可以直接忽略         场景 以前做网站的时候 导航栏的链接都是写死在页面中的 这样不易与维护 于是今天写成了用XML配置的导航栏 用到了LINQ to XML         先介绍一下功能         储存导航栏信息的XML文件如下    

  

    Title是显示名称 Link是URL OrderId表示排序的序位 Enabled为是否启用 这个菜单将最终被解析为一个ul列表    

  

    然后我们来看看如何实现         首先需要给菜单创建一个只包含属性的模型类 它的作用是成为对具体某一个菜单项的描述 系统中传递的将是这样一个模型    

  

    接下来我们要写一个从XML读取所有菜单项 并返回List<MenuItem>泛型集合的方法 在这个例子里 List<MenuItem>里放的是所有 个MenuItem对象    

  

    这个方法里我用了LINQ to XML 这是现在 NET操作XML最方便的办法 但LINQ要求你的Framework版本至少是 在这个方法中 我们首先加载了 Menu xml文件 然后查找所有MenuItem节点 并把这些节点的属性赋值给new出来的MenuItem对象 创建MenuItem对象的时 候 我使用的语法叫做对象初始化器 在return语句中 我写了ToList() 这样可以确保返回值是List<MenuItem>类 型         值得注意的是 我并没有把判断Enabled和对OrderId排序的逻辑写在这个方法中 因为判断是否启用和排序这两个操作属于业务逻辑 与数据 读取无关 所以我们分离了关注点 GetList()是趋于稳定的方法 任何业务需求的改变都不需要修改这个方法 因为它的目的很简单 仅仅是读取数 据 一个方法只做一件事情 这是一个原则         接下来我们还需要写一个业务方法 从GetList()的菜单项中选择所有Enabled的菜单 并按OrderId升序排列    

  

    为了偷懒 我直接把查询结果绑给了Repeater控件 如果按照三层的思想 我不可以把显示这块写在这个业务方法里 本文不探讨分层 有兴趣的朋友可以看看《ASP NET设计模式》这本书         接下来 我们只要在页面上放一个Repeater控件 并在Page_Load的时候调用FetchMenuData()就完成了    

  

  

    有图有真相

cha138/Article/program/net/201311/11811

相关参考

知识大全 用Asp.net实现基于XML的留言簿

用Asp.net实现基于XML的留言簿  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  一.概要 

知识大全 用ASP.NET结合XML制作广告管理程序

用ASP.NET结合XML制作广告管理程序  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!本文介绍一

知识大全 Asp.net导航控件真的值得用吗

Asp.net导航控件真的值得用吗?  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! &n

知识大全 ASP.NET母版页TreeView导航链接问题

ASP.NET母版页TreeView导航链接问题  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  

知识大全 ASP.NET入门教程 1.3.2 导航

ASP.NET入门教程1.3.2导航  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! &n

知识大全 在ASP.NET 2.0中使用页面导航控件

在ASP.NET2.0中使用页面导航控件  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  几乎每个

知识大全 asp.net 2.0中使用sitemapDATAsource做页面导航

asp.net2.0中使用sitemapDATAsource做页面导航  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶

知识大全 ASP.NET入门教程 3.5.3 导航控件[2]

ASP.NET入门教程3.5.3导航控件[2]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!&nb

知识大全 ASP.NET入门教程 3.5.3 导航控件[4]

ASP.NET入门教程3.5.3导航控件[4]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!&nb

知识大全 ASP.NET入门教程 3.5.3 导航控件[1]

ASP.NET入门教程3.5.3导航控件[1]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!&nb