您好,欢迎来到华拓科技网。
搜索
您的当前位置:首页一句话轻松搞定asp.net分页

一句话轻松搞定asp.net分页

来源:华拓科技网


rows 是客户端传过来的行数,page是页码,传参就需要就两个参数就行,sql语句中_row 和_page 自己声明的局部变量,值还是相应的row 和page ,为了运算而已。

用数据库类获得它的DataTable,转换为json格式通过一般处理程序传到客户端,客户端显示就ok了。这里我使用的是easyui datagrid进行接收和传参。这是大体的思路。

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 转换成json,这里带了“total”,传给客户端的数据总数,不传这个,客户端不会显示总数据是多少条多少条的。
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;
 }
 }

Copyright © 2019- huatuo6.cn 版权所有 赣ICP备2024042791号-9

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务