理论教育 ASP.NET4.0导航菜单定制

ASP.NET4.0导航菜单定制

时间:2023-11-01 理论教育 版权反馈
【摘要】:Web用户控件Menu.ascx负责显示数据库中数据分类信息。该控件的实现步骤如下:在Modules文件夹中添加新的Web用户控件,命名为Menu.ascx。虽然Menu.ascx文件能够读取数据库中的图书分类信息,但是目前还不能够测试效果,因为用户控件无法单独在浏览器中浏览。从系统结构来讲,Menu.ascx处于表现层,而BookDB则为数据访问层的对象,Bookstore数据库中的Category则为数据存储层。这样,Menu.ascx文件可以被任何需要显示图书类别信息的页面直接引用了。

ASP.NET4.0导航菜单定制

Web用户控件Menu.ascx负责显示数据库中数据分类信息。该控件使用DataList来显示栏目信息。该控件的实现步骤如下:

(1)在Modules文件夹中添加新的Web用户控件,命名为Menu.ascx。

(2)在Dreamweaver中设计Menu.ascx的页面布局,然后复制到Menu.ascx文件的源视图,修改ASP.NET代码如下:

(3)切换到设计视图,在页面空白处双击鼠标,进入到Menu.ascx.vb文件,引入如下命名空间:

(4)在导入了DataAccess命名空间以后,在该命名空间的下一行添加如下代码:

(5)在Menu.ascx.vb的最后添加如下代码:

(6)修改Page_Load事件处理程序如下:

(7)打开DataAccess项目中的BookDB文件,在BookDB.vb文件中添加如下Imports语句:

(8)在BookDB.vb中添加自定义方法GetBookCategory如下:

(9)在SQLServer中选中数据库Bookstore,新建如下存储过程:(www.daowen.com)

(10)至此,Menu.ascx文件设计完毕。

注意:

本操作中步骤(4)和(5)是非常重要的,这两步实现的功能是将该用户空间保存在modules命名空间以下,这样,如果在其他位置需要访问该类时就必须指定命名空间Bookstore.modules。本项目中的所有用户空间都将保存在该命名空间下。

虽然Menu.ascx文件能够读取数据库中的图书分类信息,但是目前还不能够测试效果,因为用户控件无法单独在浏览器中浏览。

从系统结构来讲,Menu.ascx处于表现层,而BookDB则为数据访问层的对象,Bookstore数据库中的Category则为数据存储层。

BookDB中的自定义方法GetBookCategory负责从表Category中读取所有的分类信息并将结果保存到数据阅读器中。运行时,首先建立数据库连接,然后建立数据命令,指定命令文本,另外由于采用的是存储过程,则应该显式指定命令文本的类型:

其中SqlCommand的构造函数接受的参数GetBookCategory为存储过程的名称。

GetBookCategory过程非常简单,仅仅是读取Category中的数据,并按CategoryName字段升序排列。

这样,Menu.ascx文件可以被任何需要显示图书类别信息的页面直接引用了。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈