rows 是客戶端傳過來的行數(shù),page是頁碼,傳參就需要就兩個參數(shù)就行,sql語句中_row 和_page 自己聲明的局部變量,值還是相應(yīng)的row 和page ,為了運(yùn)算而已。
用數(shù)據(jù)庫類獲得它的DataTable,轉(zhuǎn)換為json格式通過一般處理程序傳到客戶端,客戶端顯示就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”,傳給客戶端的數(shù)據(jù)總數(shù),不傳這個,客戶端不會顯示總數(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;
}
}
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助。
您可能感興趣的文章:- ASP.NET MVC分頁和排序功能實(shí)現(xiàn)
- ASP.NET MVC+EF在服務(wù)端分頁使用jqGrid以及jquery Datatables的注意事項(xiàng)
- ASP.NET MVC 2右鍵菜單和簡單分頁實(shí)例講解
- asp.net分頁功能實(shí)現(xiàn)
- ASP.NET無刷新分頁簡單實(shí)現(xiàn)
- ASP.NET 高性能分頁代碼
- Asp.net GridView使用大全(分頁實(shí)現(xiàn))
- Asp.Net中的三種分頁方式總結(jié)
- Asp.Net數(shù)據(jù)控件引用AspNetPager.dll分頁實(shí)現(xiàn)代碼
- MVC異步分頁代碼分享