Subsonic 3 - Repository GetPagedListWhere 子句演员问题
在存储库中有一个 GetPagedList 方法。
我有一个方法期望返回
我当前拥有的
return _repository.GetPaged(sortBy, pageNumber, 20);
PagedList但是我现在需要做一些检查,例如
_repository.GetPaged(sortBy, pageNumber, 20).Where(x => x.IsAdmin == false)
This now将类型更改为 IEnumerable。 我尝试过执行 Cast>() 但这也不起作用。
任何帮助表示赞赏!
In the Repository there is a GetPagedList method.
I have a method that expects a return of PagedList
I currently have
return _repository.GetPaged(sortBy, pageNumber, 20);
However I now need to do some checking such as
_repository.GetPaged(sortBy, pageNumber, 20).Where(x => x.IsAdmin == false)
This now changes type to IEnumerable. I have tried doing a Cast>() but that doesn't work either.
Any help appreciated!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
刚刚遇到同样的问题,发现你可以创建自己的PagedList<> 传入一个可定制的 IQueryable 对象。 如下所示,您在分页之前添加自己的 where 子句。
您可能需要添加一个 OrderBy 子句,因为我认为这是一个错误或设计限制(V3.03)不使用主键作为默认订单列。
我确信在以后的版本中会考虑这一点,因为在没有任何 where 子句的情况下进行分页非常罕见,并且更新 tt 模板不会做太多工作。
Just faced the same problem, and found that you can create your own PagedList<> passing in a customisable IQueryable object. Seen below you add your own where clauses, before paginating.
You might need to add an OrderBy clause, as i think it's either a bug or design limitation (V3.03) not using primary key as the default order column.
I'm sure this would be considered in later versions as its pretty rare to paginate without any where clause, and wouldn't be much work to updated the tt templates.