Linq Paging - 如何合并总记录数

2024-04-09

我正在尝试找出合并分页的记录计数的最佳方法。我需要这个值来计算给定页面大小和其他一些变量的总页数。
这是我到目前为止所拥有的,它使用skip和take语句获取起始行和页面大小。

promotionInfo = (from p in matches
orderby p.PROMOTION_NM descending
select p).Skip(startRow).Take(pageSize).ToList();

我知道我可以运行另一个查询,但我认为可能有另一种方法可以实现此计数,而无需运行查询两次。

提前致谢, 比利


我知道我可以运行另一个查询,但我认为可能有另一种方法可以实现此计数,而无需运行查询两次。

不,您必须运行查询。

你可以这样做:

var source = from p in matches
             orderby p.PROMOTION_NM descending
             select p;
var count = source.Count();
var promotionInfo = source.Skip(startRow).Take(pageSize).ToList();

但请注意,Skip(0)不是免费的 http://blogs.teamb.com/craigstuntz/2009/06/10/38313/.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Linq Paging - 如何合并总记录数 的相关文章

随机推荐