從開始學習到使用ASP到現在也寫了不少程序了,最令人頭痛的是寫數據分頁,每次都是由於幾個變量名或幾個參數的不同,因而需要每次都寫哪一段冗長而又繁雜的分頁代碼,代碼長了使得程序的可讀性變差,容易出差,調試半天也找不出錯在哪裡,所以慢慢的我開始使用一些網上的提供的分頁函數或分頁類。的確省事不少,但是通常的函數和類的做法都是就數據顯示部分也封裝了起來,每次為了達到自己需要的顯求效果要去改動函數或者類的本身,所以使用起來也不是怎麼方便,自己寫的分頁改起來已經夠複雜了,更不要說別人的了。
所以趁昨天有空自己寫了一個分頁的類,自我感覺良好(不要用雞蛋砸我),在這里和大家分享一下自己的經驗(談不上經驗,感想吧)。在這裡我也不想說分頁的原理了,反正大家都懂,要我往深入的談我也不會。呵呵。
一、創建分頁類的目標
在寫之前,我曾想過,我究竟要寫怎麼樣一個類,回想起以前寫分頁過程的時候,最煩的莫過於每次都要寫哪一段複雜的分頁代碼,最大的煩惱每次都是僅僅幾個變量名的不同。所以第一個要實現的就是要把這個封裝起來,第二個就是要把分頁的導航條也封裝起來,第三個,不習慣哪些把數據顯示部分也封裝起來的方法,這不是方便編程,對與哪些對顯示效果每次都不同的用戶來說,比自己寫分頁還要麻煩。所以我的目地就是對RecordSet進行一些簡單的封裝。
二、創建過程
所以我寫的第一個屬性,就是返一個經過處理的RecordSe
PublicPropertyGetGetRs()SetXD_Rs=Server.createobject("adodb.recordset")
XD_Rs.PageSize=PageSize
XD_Rs.OpenXD_SQL,XD_Conn,1,1
Ifnot(XD_Rs.eofandXD_RS.BOF)Then
Ifint_curpage>XD_RS.PageCountThen
int_curpage=XD_RS.PageCount
EndIf
XD_Rs.AbsolutePage=int_curpage
EndIf