要从数据库获取页面,我必须执行以下操作:
var cs = ( from x in base.EntityDataContext.Corporates
select x ).Skip( 10 ).Take( 10 );
这将跳过前10行,并选择下10行。
我如何知道没有分页的查询会导致多少行?我不想运行另一个查询来获取计数。
最佳答案
要在跳过/获取之前获取记录总数,您必须运行一个单独的查询。获取返回的实际数字将使用Count(),但如果实现了原始查询,则不会导致另一个查询。
var q = from x in base.EntityDataContext.Corporates
select x;
var total = q.Count();
var cs = q.Skip(10).Take(10);
var numberOnSelectedPage = cs.Count();
关于linq-to-sql - 获取分页时的记录总数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2008647/