469,271 Members | 1,785 Online
Bytes | Developer Community
New Post

Home Posts Topics Members FAQ

Post your question to a community of 469,271 developers. It's quick & easy.

sample code for pagination needed urgently in c#

nirmalsingh
218 100+
hi everybody,
as in ( the scripts) page below, i want to do some pagination in c#.
for example : <<previous>> 1 2 3 4 5 . . . . . 51 52 53 <<next>>
help me plz..

i have build htmltable using c# just like

Response.Write("<table">);
..........
..........
..........
Response.Write("</table">);

i want display only 10 records in a table, and also i know total number of records help me plz.
Jan 17 '07 #1
3 8252
radcaesar
759 Expert 512MB
Hi,
Here is a sample paging code in ASP 3.0, Conver the syntax to c#.

Why did u use HTML Table instead of DataGrid. Any particular reason ?

:)


<%
Option Explicit

Const adOpenStatic = 3
Const adLockReadOnly = 1
Const adCmdText = &H0001

Dim CONN_STRING
CONN_STRING = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & Server.MapPath("database.mdb")

Dim iPageSize
Dim iPageCount
Dim iPageCurrent
Dim strOrderBy
Dim strSQL
Dim objPagingConn
Dim objPagingRS
Dim iRecordsShown
Dim iFieldCount
Dim iRecordCount
Dim LoopRecordCount
Dim pageNum
Dim counter
Dim markShowPage
Dim I, J

iPageSize = 6

If Request.QueryString("page") = "" Then
iPageCurrent = 1
Else
iPageCurrent = CInt(Request.QueryString("page"))
End If

strSQL = "SELECT * from sample order by ID asc;"

Set objPagingConn = Server.CreateObject("ADODB.Connection")
objPagingConn.Open CONN_STRING

Set objPagingRS = Server.CreateObject("ADODB.Recordset")
objPagingRS.PageSize = iPageSize
objPagingRS.CacheSize = iPageSize
objPagingRS.Open strSQL, objPagingConn, adOpenStatic, adLockReadOnly, adCmdText

iPageCount = objPagingRS.PageCount
iFieldCount = objPagingRS.Fields.Count
iRecordCount = objPagingRS.RecordCount

If iPageCurrent > iPageCount Then iPageCurrent = iPageCount
If iPageCurrent < 1 Then iPageCurrent = 1

If iPageCount = 0 Then
Response.Write "No records found!"
Else
objPagingRS.AbsolutePage = iPageCurrent

Dim arrDBData
ReDim arrDBData(iFieldCount, iRecordCount)
LoopRecordCount = 0

'arrDBData = objPagingRS.GetRows()

Do While LoopRecordCount < iPageSize And Not objPagingRS.EOF
For I = 0 To objPagingRS.Fields.Count - 1
arrDBData(I, LoopRecordCount) = objPagingRS.Fields(I)
Next
LoopRecordCount = LoopRecordCount + 1
objPagingRS.MoveNext
Loop

objPagingRS.Close
Set objPagingRS = Nothing
objPagingConn.Close
Set objPagingConn = Nothing
End If

iRecordCount = iRecordCount - 1
iFieldCount = iFieldCount - 1
LoopRecordCount = LoopRecordCount - 1

pageNum = Round(iRecordCount/iPageSize)
If pageNum < (iRecordCount/iPageSize) Then pageNum = pageNum + 1

Response.Write "&nbsp;&nbsp;<b>Page: "
For counter = 1 To pageNum
if counter=iPageCurrent then
Response.Write "&nbsp;<span class=activepage>&nbsp;"
Response.Write counter
Response.Write "&nbsp;</span>"
markShowPage=1
else
Response.Write "&nbsp;<a onclick=exitoff() href=db_paging_array.asp?page="
Response.Write counter
Response.Write " class=listingLink>"
Response.Write counter
Response.Write "</a>"
end if
Next
Response.Write "</b>"

Response.Write "&nbsp;&nbsp;"

Response.Write "<b>"

Response.Write "<a href=db_paging_array.asp?page="
If iPageCurrent = 1 Then
Response.Write pageNum
else
Response.Write iPageCurrent-1
end if
Response.Write " class=listingLink>Back</a>&nbsp;&nbsp;"
Response.Write "<a href=db_paging_array.asp?page="
If iPageCurrent = pageNum Then
Response.Write "1"
else
Response.Write iPageCurrent+1
end if
Response.Write " class=listingLink>Next</a>"

Response.Write "</b>"

%>
<p>

<table border="1">
<%
For I = 0 To LoopRecordCount
Response.Write "<tr>" & vbCrLf
For J = 0 To ifieldCount
Response.Write vbTab & "<td>" & arrDBData(J, I) & "</td>" & vbCrLf
Next ' J
Response.Write "</tr>" & vbCrLf
Next ' I
%>
</table>


<style>

body {
font-family: Arial, Helvetica, sans-serif;
font-size: 12px;
}

td {
font-family: Arial, Helvetica, sans-serif;
font-size: 12px;
}

listingLink {
font-family: Arial, Helvetica, sans-serif;
font-size: 12px;
font-weight: bold;
color: blue;
text-decoration:none;
margin-left:0px;
margin-right:0px;
}

a.listingLink:hover {
color:#FF0000;
}

activepage {
color:#ffffee;
background-color: #000033;
font-weight: bold;
}
</style>



hi everybody,
as in ( the scripts) page below, i want to do some pagination in c#.
for example : <<previous>> 1 2 3 4 5 . . . . . 51 52 53 <<next>>
help me plz..

i have build htmltable using c# just like

Response.Write("<table">);
..........
..........
..........
Response.Write("</table">);

i want display only 10 records in a table, and also i know total number of records help me plz.
Jan 17 '07 #2
nirmalsingh
218 100+
i am loading radio buttons in the first column of every rows, and someone says client side control will be loaded more faster then web controls, i am starter to .net. is there is any way to load controls in datagrid? if s give sample code for reference plz
Jan 17 '07 #3
radcaesar
759 Expert 512MB
Yes thats true. But that will not affect the application's performance like you think. I will suggest the datagrid for this purpose.

After you add the controls like this, refering that particular control will lead you with lot of work arounds. When compared to the same, datagrid is preferable.

:)

i am loading radio buttons in the first column of every rows, and someone says client side control will be loaded more faster then web controls, i am starter to .net. is there is any way to load controls in datagrid? if s give sample code for reference plz
Jan 17 '07 #4

Post your reply

Sign in to post your reply or Sign up for a free account.

Similar topics

9 posts views Thread by Sharif T. Karim | last post: by
reply views Thread by Kamliesh Nadar | last post: by
1 post views Thread by Kruq | last post: by
5 posts views Thread by John | last post: by
1 post views Thread by dhanu | last post: by
2 posts views Thread by adamjblakey | last post: by
1 post views Thread by CARIGAR | last post: by
By using this site, you agree to our Privacy Policy and Terms of Use.