這裏只寫大概思路及關(guān)鍵代碼了.
LINQ裏有一個(gè)對集合進(jìn)行分區(qū)的操作可用於分頁.
pageSize:分頁大小,也就是一頁顯示的行數(shù)
curretPage:當(dāng)前頁碼.先這麼理解吧
totalPages:總頁數(shù)
taotalPages=(int)Math.Ceiling(List<T>().Count / (double)pageSize);
這裏List<T>()就是你的集合.比如DataTable中的DataRow.
得到需要顯示的data.
var dataList=(from r in List<T>()).
Skip(curretPage*pageSize).
Take(pageSize)
最後一頁,pageSize如果大於剩餘count,則只獲取剩餘count的list.不會throw exception.
下一次request只需在改變currenPage即可.
具體設(shè)計(jì)就不贅述了.當(dāng)然上述方法for
asp.net同樣適用.
希望對大家有幫助.