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文件可以被任何需要显示图书类别信息的页面直接引用了。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。