我想创建一个通用存储库,并有一个返回IPagedList的方法,如下所示:
public IPagedList<TEntity> GetPage(int? page, int? size)
{
IQueryable<TEntity> query = _dbSet; // DbSet<TEntity> _dbSet;
return query.ToPagedList(page ?? 1, size ?? 10);
}
但是,IPagedList 需要添加 OrderBy() 否则会抛出以下消息:
仅 LINQ to Entities 中的排序输入支持“跳过”方法。必须在方法“Skip”之前调用方法“OrderBy”。
我怎样才能做到这一点,我怎样才能为 TEntity 类型添加排序?我可以让方法返回 IQueryable 并在控制器/调用者上进行分页,它可以工作,但想在通用存储库上执行此操作。