asp.net 一句话搞定分页

2018-06-22 07:33:24来源:未知 阅读 ()

新老客户大回馈,云服务器低至5折

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; } }

 

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:非web项目中使用XDT的实例

下一篇:Parallel并行编程初步