在ASP的数据库编程的时,由于浏览器的大小限制,在要浏览的数据记录比较多的时候,为了达到更直观的效果,我们把这些数据记录分成若干的页面,通过数据导航按钮(或者其他超链接),分页的浏览。其实这种数据记录的分页浏览在ASP.NET也能够实现。并且在实现的过程中比起在ASP的处理过程显得条理更清晰,也更容易些。
通过浏览器进行分页浏览数据记录基本类型主要有二种。其他类型的分页浏览要么是对这二种类型的修改,要么是对这二种类型的综合。具体表现方式的如下面这二幅图:

图01:第一种分页浏览数据记录式样

图02:第二种分页浏览数据记录式样
下面就来探讨一下在ASP.NET中这二种分页浏览数据记录的具体实现过程:
首先来介绍一下我们使用的数据库,在本文中为了方便起见,我们使用了本地数据库Access 2000,数据库名称为"Data.mdb",里面存放了一张数据表"tblItem"。此数据表的结构如下:
| 字段名称 |
字段类型 |
| ItemID |
自动编号 |
| ItemName |
文本类型 |
如果你采用的是别的数据库,只需对下面介绍的程序进行简单的修改就可以了。这将在下面介绍。
一. 本文程序设计和运行的软件环境:
(1).微软公司视窗2000服务器版
(2)..Net FrameWork SDK Beta 2
二. 第一种分页浏览数据记录的关键步骤以及实现方法:
(1).首先要得到初始浏览数据记录的超链接字符串:
这其实很关键,因为在第一种分页浏览中的"首页"、"下一页"等操作,都是通过在这个超链接字符串后面加入要浏览页面的参数来实现的,在本文的程序中是通过GetPageName ( )函数来实现的。此函数具体如下:
Function GetPageName ( ) As String Dim Str As String Dim Pos As Short Str = Request.ServerVariables ( "Script_Name" ).Trim ( ) Pos = Str.LastIndexOf ( "/" ) If Pos >= 0 Then Return Str.SubString ( Pos + 1 ) Else Return Str End If End Function |
(2).要得到你所要浏览的数据记录总数:
在本文中,为了方便,我们是把数据表"tblItem"中的全部记录都拿来浏览。ASP.NET页面通过ADO.NET来得到数据表"tblItem"。下面代码就是利用ADO.NET来得到"tblItm"表中记录总数的程序代码:
<% @ Page Language = "VB" %> <% @ Import Namespace = "System.Data" %> <% @ Import Namespace = "System.Data.OleDb" %>
|
(3).计算出浏览的数据记录总共页面数: