Dari awal belajar menggunakan ASP hingga sekarang, saya telah menulis banyak program. Hal yang paling merepotkan adalah menulis paging data. Setiap kali, itu karena perbedaan beberapa nama variabel atau beberapa parameter. Oleh karena itu, perlu untuk menulis kode paging yang panjang dan rumit setiap saat. Kode panjang membuat keterbacaan program lebih buruk dan mudah bepergian dalam bisnis. Saya tidak dapat menemukan kesalahan setelah debugging untuk waktu yang lama, jadi saya perlahan -lahan mulai menggunakan beberapa fungsi paging atau kelas paging yang disediakan di internet. Ini memang banyak yang bebas masalah, tetapi metode fungsi dan kelas yang biasa adalah merangkum bagian tampilan data. Setiap kali, untuk mencapai efek yang diinginkan, fungsi atau kelas itu sendiri harus diubah, sehingga tidak terlalu nyaman untuk digunakan. Halaman yang ditulis sendiri sudah cukup rumit, apalagi orang lain.
Jadi saya menulis kelas paged sendirian sementara saya punya waktu kemarin, dan merasa senang dengan diri saya sendiri (jangan menghancurkan saya dengan telur). Saya akan membagikan pengalaman saya dengan Anda di sini (saya tidak dapat berbicara tentang pengalaman, mari kita pikirkan). Saya tidak ingin berbicara tentang prinsip pagination di sini lagi. Ngomong -ngomong, semua orang memahaminya, dan saya tidak akan tahu apakah saya ingin berbicara secara mendalam. hehe.
1. Tujuan menciptakan kelas paging
Sebelum menulis, saya memikirkan kelas seperti apa yang ingin saya tulis. Ketika saya mengingat masa lalu ketika menulis paging, hal yang paling menjengkelkan adalah kode paging rumit yang harus saya tulis setiap saat. Kekhawatiran terbesar adalah bahwa setiap kali adalah perbedaan antara hanya beberapa nama variabel. Jadi hal pertama yang harus dicapai adalah merangkum ini, yang kedua adalah merangkum bilah navigasi pagination. Yang ketiga adalah merangkum bagian tampilan data dengan tidak digunakan. Ini tidak nyaman untuk diprogram, dan bagi pengguna yang memiliki efek tampilan yang berbeda setiap saat, lebih merepotkan daripada menulis paging sendiri. Jadi tujuan saya adalah membuat beberapa enkapsulasi sederhana dari Recordset.
2. Proses Penciptaan
Jadi properti pertama yang saya tulis adalah mengembalikan rekaman yang diproses
Publicpropertygetrs ()Setxd_rs = server.createObject ("adodb.recordset")
Xd_rs.pagesize = halaman
Xd_rs.openxd_sql, xd_conn, 1,1
Ifnot (xd_rs.eofandxd_rs.bof) lalu
Ifint_curpage> xd_rs.pagecountthen
int_curpage = xd_rs.pagecount
Endif
Xd_rsolutepage = int_curpage
Endif