我不明白怎麼就只能從數據庫中獲取所需的行數,當你需要知道的行總量序獲得分頁工作。如何使用PagedDataSource和SQL進行分頁?
我的意思是:我 跟着這個例子: http://www.c-sharpcorner.com/uploadfile/rizwan328/datalist-custom-paging-in-Asp-Net-using-C-Sharp/
但是,而不是使用一個DataTable我有一個數據庫。
我得到這樣的數據庫的消息,這得到所有的消息從我的新聞表:
List<News> news = News.GetNews();
public static List<News> GetNews(){
List<News> news = new List<News>();
using (SqlConnection conn = new SqlConnection(CONNSTRING)) {
SqlCommand cmd = new SqlCommand("SELECT * FROM News_news ORDER BY date DESC", conn);
,從所有的新聞項目獲取的所有數據。
然後,我創建一個PagedDataSource:
PagedDataSource objPds = new PagedDataSource();
objPds.DataSource = news;
objPds.AllowPaging = true;
objPds.PageSize = numRows;
//Set the current page
objPds.CurrentPageIndex = CurrentPage;
//Set the buttons
推杆的中繼器中的數據,將顯示aspx頁面
repeater1.DataSource = objPds;
repeater1.DataBind();
的前5項喜歡我有一個分頁的頭版說向我顯示總頁數和當前頁面,當我點擊下一頁的按鈕時,我會再次完成。
但我知道這是不正確的,因爲我總是得到所有的新聞,然後discared的消息,我不需要。但是,請問,如何做到這一點,以便我只獲得所需的新聞項目?
我需要先算在我的表中的行數?
您可能缺少pageCount屬性初始化 –
我不明白,我需要能夠設置總頁數,不是嗎?根據數據源,它會創建一個總頁數,所以不是這樣,所以您必須獲取所有數據? –