Pan*_*ian 0 c# linq collections list
我有一个包含8个项目的列表.
我需要从列表中获取每5个项目
我试过的代码:
lstRules.ToList()
.GetRange(((currentPage - 1) * pageSize + 1) - 1, (currentPage * pageSize));
Run Code Online (Sandbox Code Playgroud)
如果CurrentPage = 1 and Pagesize = 5
那么aove代码正常工作,因为在这里我通过范围(0,5)...
如果CurrentPage = 2 and PageSize = 5
那样它会抛出如下错误:
"偏移量和长度超出了数组的范围,或者计数大于从索引到源集合末尾的元素数量"
我知道这个错误发生,因为我只有3
列表中的项目,我通过范围(5,5)
...所以我得到了这个错误..
我的问题是如何解决这个问题?
有没有其他方法从列表中获取数据?
你可以这样做:
如果你有最新的pageNumber
并且知道你定义的每页有多少记录:recordsPerPage
通用查询看起来像这样
var currentPageData = lstRules.ToList().
Skip(pageNumber * recordsPerPage).Take(recordsPerPage);
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
1680 次 |
最近记录: |