一句話(huà)輕松搞定asp.net分頁(yè)
rows 是客戶(hù)端傳過(guò)來(lái)的行數(shù),page是頁(yè)碼,傳參就需要就兩個(gè)參數(shù)就行,sql語(yǔ)句中_row 和_page 自己聲明的局部變量,值還是相應(yīng)的row 和page ,為了運(yùn)算而已。
用數(shù)據(jù)庫(kù)類(lèi)獲得它的DataTable,轉(zhuǎn)換為json格式通過(guò)一般處理程序傳到客戶(hù)端,客戶(hù)端顯示就ok了。這里我使用的是easyui datagrid進(jìn)行接收和傳參。這是大體的思路。
string sql = "select top " + rows + " * from TestData where testID not in(select top " + (_rows * (_page - 1)) + " testID from TestData order by testID desc) order by testID desc";
//DataTable 轉(zhuǎn)換成json,這里帶了“total”,傳給客戶(hù)端的數(shù)據(jù)總數(shù),不傳這個(gè),客戶(hù)端不會(huì)顯示總數(shù)據(jù)是多少條多少條的。 public static string CreateJsonParameters(DataTable dt, bool displayCount, int totalcount) { StringBuilder JsonString = new StringBuilder(); //Exception Handling if (dt != null) { JsonString.Append("{ "); if (displayCount) { JsonString.Append("\"total\":"); JsonString.Append(totalcount); JsonString.Append(","); } JsonString.Append("\"rows\":[ "); for (int i = 0; i < dt.Rows.Count; i++) { JsonString.Append("{ "); for (int j = 0; j < dt.Columns.Count; j++) { if (j < dt.Columns.Count - 1) { //if (dt.Rows[i][j] == DBNull.Value) continue; if (dt.Columns[j].DataType == typeof(bool)) { JsonString.Append("\"" + dt.Columns[j].ColumnName + "\":" + dt.Rows[i][j].ToString().ToLower() + ","); } else if (dt.Columns[j].DataType == typeof(string)) { JsonString.Append("\"" + dt.Columns[j].ColumnName + "\":" + "\"" + dt.Rows[i][j].ToString().Replace("\"", "\\\"") + "\","); } else { JsonString.Append("\"" + dt.Columns[j].ColumnName + "\":" + "\"" + dt.Rows[i][j] + "\","); } } else if (j == dt.Columns.Count - 1) { //if (dt.Rows[i][j] == DBNull.Value) continue; if (dt.Columns[j].DataType == typeof(bool)) { JsonString.Append("\"" + dt.Columns[j].ColumnName + "\":" + dt.Rows[i][j].ToString()); } else if (dt.Columns[j].DataType == typeof(string)) { JsonString.Append("\"" + dt.Columns[j].ColumnName + "\":" + "\"" + dt.Rows[i][j].ToString().Replace("\"", "\\\"") + "\""); } else { JsonString.Append("\"" + dt.Columns[j].ColumnName+ "\":" + "\"" + dt.Rows[i][j] + "\""); } } } /*end Of String*/ if (i == dt.Rows.Count - 1) { JsonString.Append("} "); } else { JsonString.Append("}, "); } } JsonString.Append("]"); JsonString.Append("}"); return JsonString.ToString().Replace("\n", ""); } else { return null; } }
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助。
- ASP.NET MVC分頁(yè)和排序功能實(shí)現(xiàn)
- ASP.NET MVC+EF在服務(wù)端分頁(yè)使用jqGrid以及jquery Datatables的注意事項(xiàng)
- ASP.NET MVC 2右鍵菜單和簡(jiǎn)單分頁(yè)實(shí)例講解
- asp.net分頁(yè)功能實(shí)現(xiàn)
- ASP.NET無(wú)刷新分頁(yè)簡(jiǎn)單實(shí)現(xiàn)
- ASP.NET 高性能分頁(yè)代碼
- Asp.net GridView使用大全(分頁(yè)實(shí)現(xiàn))
- Asp.Net中的三種分頁(yè)方式總結(jié)
- Asp.Net數(shù)據(jù)控件引用AspNetPager.dll分頁(yè)實(shí)現(xiàn)代碼
- MVC異步分頁(yè)代碼分享
相關(guān)文章
asp.net生成字母和數(shù)字混合圖形驗(yàn)證碼
這篇文章主要為大家詳細(xì)介紹了asp.net生成字母和數(shù)字混合圖形驗(yàn)證碼的實(shí)現(xiàn)方法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-02-02C# WindowsMediaPlayer 的一些用法實(shí)例
這篇文章介紹了C# WindowsMediaPlayer 的一些用法實(shí)例,有需要的朋友可以參考一下2013-09-09詳解MVC中為DropDownListFor設(shè)置選中項(xiàng)的方法
這篇文章主要介紹了詳解MVC中為DropDownListFor設(shè)置選中項(xiàng)的方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-12-12asp.net sqlconnection con.close和con.dispose區(qū)別
con.close是用來(lái)關(guān)閉和數(shù)據(jù)庫(kù)的連接,相對(duì)于open2008-12-12.net后臺(tái)頁(yè)面統(tǒng)一驗(yàn)證是否登錄
這篇文章主要為大家詳細(xì)介紹了.net后臺(tái)頁(yè)面統(tǒng)一驗(yàn)證是否登錄的方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-04-04ASP.NET 頁(yè)面間數(shù)據(jù)傳遞方法小結(jié)
Web 頁(yè)面是無(wú)狀態(tài)的, 服務(wù)器對(duì)每一次請(qǐng)求都認(rèn)為來(lái)自不同用戶(hù),因此,變量的狀態(tài)在連續(xù)對(duì)同一頁(yè)面的多次請(qǐng)求之間或在頁(yè)面跳轉(zhuǎn)時(shí)不會(huì)被保留。2009-12-12