Improvements on the WEB Forms page creation Paging data access above MSDN
Source: Internet
Author: User
Some time ago did the first ASP.net project, very simple. When you have a small problem with the DataGrid paging, do a reference to the MSDN example. There seems to be a problem in the actual process, which has improved:
Link: ms-help://ms. Msdnqtr.2003feb.2052/vbcon/html/vbwlkwalkthroughdisplayingdatainlistboxesonwebformspage.htm
Description: This article uses two SQL statements to use different statements when paging forward and paging backwards. After improvement, only one statement can be used. I use stored procedures in the project:
CREATE PROCEDURE Selectalluser
(
@Id int
)
As
Select Top Id,username,idcard,sex,birthday,mailaddr,getscholartime
From UserInfo
where id>= @Id
Go
The key code is as follows:
///
Read 15 records from the database that started from UserID and display
///
///
private void Showalluser (int userID)
{
Managedb managedb = new Managedb ();
int count = Managedb.getusercount (); This method gets the total number of records
if (count = = 1)
{
Response.Redirect ("Error.aspx", true);
Return
}
Count = count/this.griduser.pagesize;
SqlDataReader reader = Managedb.getalluser (UserID);
This.gridUser.DataSource = reader;
This.gridUser.DataBind ();
Reader. Close ();
viewstate["currentpage"] = currentpage;
Viewstate[currentpage.tostring ()] = This.griduser.items[0]. Cells[0]. Text;
if (CurrentPage <=0)
{
this.btnPrevious.Enabled = false;
}
if (currentpage >= count)
{
this.btnNext.Enabled = false;
}
}
Next Page button click event:
private void Btnnext_click (object sender, System.EventArgs e)
{
This.btnPrevious.Enabled = true;
currentpage = (int) (viewstate["currentpage"]);
CurrentPage + +;
The following code has a +1 operation, which is necessary to ensure that the records obtained are not duplicated.
int lastid = Convert.ToInt32 (this.griduser.items[this.griduser.pagesize-1). Cells[0]. Text) + 1;
The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion;
products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the
content of the page makes you feel confusing, please write us an email, we will handle the problem
within 5 days after receiving your email.
If you find any instances of plagiarism from the community, please send an email to:
info-contact@alibabacloud.com
and provide relevant evidence. A staff member will contact you within 5 working days.