我有使用WCF服務的MVC項目。服務器端分頁MVC 6.0
當我顯示數據列表時,我確實希望從數據庫/服務加載所有內容並進行客戶端分頁。但我確實需要服務器端分頁。如果我有100條記錄,我的頁面大小爲10,那麼當用戶點擊頁面1時,它只會從數據庫中檢索前10條記錄,如果用戶點擊頁面3,則只會檢索相應的10條記錄。 我沒有使用Angular或任何其他引導程序。
有人可以指導我如何做到這一點?
public ActionResult Index(int pageNo = 1)
{
..
..
..
MyViewModel[] myViewModelListArray = MyService.GetData();
//when I create this PageList, BLL.GetData have to retreive all the records to show more than a single page no.
//But if the BLL.GetData() was changed to retrieve a subset, then it only shows a single page no.
//what I wanted to do is, show the correct no of pages (if there are 50 records, and pageSize is 10, then show
//page 1,2,3,4,5 and only retrieve 10 records at a time.
PagedList<MyViewModel> pageList = new PagedList<<MyViewModel>(myViewModelListArray, pageNo, pageSizeListing);
..
..
..
return View(pageList);
}
你可以發佈一些代碼告訴我們你試過了什麼,並且不工作嗎?要向大家展示您正在使用的是什麼類型的環境以及您正在使用的編碼風格,這將有很長的路要走。 –
請顯示一些代碼。您也可以嘗試將啓動和限制傳遞給服務器,以便告訴服務器應該返回哪些特定記錄集。 – bogzy
@bogzy如果我通過傳遞PageSize和PageNo來限制要返回的特定記錄集,那麼它只顯示一個頁面。 – user423415