我们在LINQ to SQL中有orderby子句,如下所示,但是我们是否有任何分页功能?
SchemaVersionParser
或者我们必须像下面的查询那样手动(排序)?
from trans in DB.transactions
orderby trans.column descending
select trans;
答案 0 :(得分:0)
据我所知,您必须使用.Skip
和.Take
,但您可以为IQueryable
编写扩展名,以方便您的工作:
public static class Extensions
{
public static IQueryable<T> Paging<T>(this IQueryable<T> source, int pageNumber, int pageLength)
{
return source.Skip(pageNumber * pageLength).Take(pageLength);
}
}
var source = (from trans in DB.transactions
orderby "cancellation_reason_id" descending
select trans);
source = source.Paging(0, 10); // Get first page with 10 item