我似乎找不到这个问题的答案,也找不到一个很好的例子,说明如何完成我要做的事情。我确定它是在某个地方发布或解释的,但是我很难找到所需的精确解决方案。

我正在亚音速3.0.0.4中使用activerecord。当我做类似的事情

recordset = VehicleModel.Find(x => x.Model.StartsWith(SearchText));

我恢复了一个车辆模型对象的iList(或更简单的记录集),这很好,直到我返回太多记录为止。我也无法订购返回的记录集(我的电网会做得这么好,但是我敢肯定,如果我的记录太多,它会太慢)。当发现是返回iList的情况下,我无法直接对抗这个(我可能会忽略一些简单的东西,所以请不要杀死我)。

我的问题是有人可以解释如何找到像我上面的数据,对其进行排序并获取一个页面大小n的数据页面?

我是错的吗?我什至接近正确的道路吗?

有帮助吗?

解决方案

int currentPage = x
int pageSize = n
recordset = VehicleModel.Find(x => x.Model.StartsWith(SearchText)).Skip(currentPage x PageSize).Take(PageSize);

这是假设电流页面从0开始。
如果您的当前页面从1开始,则 Skip((currentPage - 1) x PageSize)

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top