【发布时间】:2020-04-04 09:58:05
【问题描述】:
我有一个模块可以显示后端的所有记录,但问题是记录太多了,它在屏幕上显示 22k 条记录并且屏幕会变慢,并且所有组件工作缓慢,所以我必须在 MVC 中进行分页。
控制器
public string TrafficMovement(string formData)
{
try
{
formData = HttpUtility.HtmlDecode(formData);
ReportsAC _obj = new ReportsAC();
DataSet dataset = new DataSet();
ReportsMapper mapper = JsonConvert.DeserializeObject<ReportsMapper>(formData);
UserSession userSession = (UserSession)Session["userSession"];
mapper.Company_Id = userSession.Company_Id;
dataset = _obj.TrafficMovementAC(mapper);
return "{\"Status\":true , \"Message\":\"success\" ,\"Data\": " + JsonConvert.SerializeObject(dataset) + "}";
}
catch (Exception ex)
{
return "{\"Status\":false , \"Message\":\"" + ex.Message.ToString() + "\"}";
}
}
jQuery
函数 Traffic_Movement() {
try {
var url = "/Reports/TrafficMovement";
var dataString = {};
ShowLoader();
//dataString.Report_Period = $("#Report_Period").val();
dataString.tfMonth = $("#tffMonth").val();
dataString.tfYear = $("#tffYear").val();
AjaxSubmission(dataString, url, $('input[name=__RequestVerificationToken]').val()).done(function (data) {
if (data.Message == "success") {
var strHTML = '';
var strVAL = '';
if (("#tfbdy") != undefined) {
$('#count_data').html("TOTAL RECORDS: " + data.Data.Table.length);
// $("#trBody").html("<tr><td colspan='15'></td></tr>");
}
if (data.Data.Table != undefined && data.Data.Table.length > 0) {
for (var i = 0; i < data.Data.Table.length; i++) {
//here i m doing binding work
}
$("#tfbdy").html(strHTML);
}
}
HideLoader();
}).fail(function (result) {
//console.log(result.Message);
HideLoader();
});
} catch (e) {
console.log(e.message);
HideLoader();
}
}
组件
public DataSet TrafficMovementAC(ReportsMapper mapper)
{
try
{
SqlParameter[] sqlParameter = new SqlParameter[6];
sqlParameter[0] = new SqlParameter("@Company_Id", mapper.Company_Id);
sqlParameter[1] = new SqlParameter("@Branch_Id", mapper.Branch_Id);
sqlParameter[2] = new SqlParameter("@User_Id", mapper.User_Id);
sqlParameter[3] = new SqlParameter("@FY_ID", mapper.FY_Id);
//sqlParameter[4] = new SqlParameter("@Report_Period", mapper.Report_Period );
sqlParameter[4] = new SqlParameter("@tfMonth", mapper.tfMonth);
sqlParameter[5] = new SqlParameter("@tfYear", mapper.tfYear);
dataAccess.ExecuteSelectQueryWithDataSet("SKYBOOKS_TRAFFIC_MOVEMENT_LIST", sqlParameter, out dataSet);
return dataSet;
}
catch
{
throw;
}
}
如果有人建议我分页想法,那将意味着很多,提前致谢。
【问题讨论】:
标签: asp.net asp.net-mvc asp.net-mvc-4 asp.net-mvc-3