asp.net 如果第二页上只有一条记录,mvc 网络网格不显示分页
asp.net mvc web grid is not showing pagination if there is only one record on the secound page
当从我的网站前端插入一条记录时,它会在 ajax 表单提交后填充网格。我正在使用 mvc web 网格显示数据,网格被限制为每页仅显示 4 条记录。
如果我从表格中插入 5 条记录,它就会消失并且分页不会显示,直到我在网格中放入第 6 条记录,如果这样做的话,分页会在第二页上显示 2 条记录不明白的是为什么现在插入时显示第5条记录,而添加第6条记录后才显示。
这是网格的控制器操作
public ActionResult grid(int page = 1, int pageSize = 4, int AppointmentID = 0, int PatientID = 0)
{
AllergiesAppointmentList = ObjAllergiesRepository.PatientAllergiesAppointmentList(PatientID, AppointmentID, Helpers.SessionHelper._PracticeID, page, pageSize);
int PatientIDForCheckOnly = 0;
bool status = true;
int callfor = 1;
ViewBag.TotalAllergyCount = AllergiesAppointmentList.Count();
//ViewBag.IsNKAStatus = ObjAllergiesRepository.PatientAllergyDetail_Profile(PatientIDForCheckOnly, status, );
var recordAppointment = new CustomPaging<Allergies>();
recordAppointment.Content = AllergiesAppointmentList.ToList();
if (AllergiesAppointmentList.Count() != 0)
{
recordAppointment.TotalRecords = AllergiesAppointmentList.FirstOrDefault().TotalRecords;
}
else
{
recordAppointment.TotalRecords = 0;
}
recordAppointment.CurrentPage = 1;
recordAppointment.PageSize = 5;
return View(recordAppointment);
}
以防其他人遇到同样的问题。有两点可用于网格配置。一个是您自己在控制器中设置记录数,并按该顺序查询数据库 returns 记录。其次是在视图中的 web 网格本身。对于此选项,您从数据库中获取所有记录并在前端进行分页(对于大型数据库来说非常昂贵)。对于此设置,您必须像这样设置网格参数
var grid = new WebGrid(canPage: true, rowsPerPage: Your desired page size...
我做错的是我要求我的数据库进行分页,但我也要求我的网络网格做同样的事情因此显示了错误的记录数。
当从我的网站前端插入一条记录时,它会在 ajax 表单提交后填充网格。我正在使用 mvc web 网格显示数据,网格被限制为每页仅显示 4 条记录。
如果我从表格中插入 5 条记录,它就会消失并且分页不会显示,直到我在网格中放入第 6 条记录,如果这样做的话,分页会在第二页上显示 2 条记录不明白的是为什么现在插入时显示第5条记录,而添加第6条记录后才显示。
这是网格的控制器操作
public ActionResult grid(int page = 1, int pageSize = 4, int AppointmentID = 0, int PatientID = 0)
{
AllergiesAppointmentList = ObjAllergiesRepository.PatientAllergiesAppointmentList(PatientID, AppointmentID, Helpers.SessionHelper._PracticeID, page, pageSize);
int PatientIDForCheckOnly = 0;
bool status = true;
int callfor = 1;
ViewBag.TotalAllergyCount = AllergiesAppointmentList.Count();
//ViewBag.IsNKAStatus = ObjAllergiesRepository.PatientAllergyDetail_Profile(PatientIDForCheckOnly, status, );
var recordAppointment = new CustomPaging<Allergies>();
recordAppointment.Content = AllergiesAppointmentList.ToList();
if (AllergiesAppointmentList.Count() != 0)
{
recordAppointment.TotalRecords = AllergiesAppointmentList.FirstOrDefault().TotalRecords;
}
else
{
recordAppointment.TotalRecords = 0;
}
recordAppointment.CurrentPage = 1;
recordAppointment.PageSize = 5;
return View(recordAppointment);
}
以防其他人遇到同样的问题。有两点可用于网格配置。一个是您自己在控制器中设置记录数,并按该顺序查询数据库 returns 记录。其次是在视图中的 web 网格本身。对于此选项,您从数据库中获取所有记录并在前端进行分页(对于大型数据库来说非常昂贵)。对于此设置,您必须像这样设置网格参数
var grid = new WebGrid(canPage: true, rowsPerPage: Your desired page size...
我做错的是我要求我的数据库进行分页,但我也要求我的网络网格做同样的事情因此显示了错误的记录数。