我想使用Skip和Take进行分页,但我也想使用orderby
没有Skip和Take,使用LinqPad我可以执行以下操作,这适用于orderby
var query = from m in Orders
orderby m.ID descending
select m;
query.Dump();
Run Code Online (Sandbox Code Playgroud)
但是,如果我保持秩序,那么这会失败
query = query.Skip(1 + 10).Take(10);
query.Dump();
Run Code Online (Sandbox Code Playgroud)
我删除了orderby并且它有效,但我想要订单....
var query = from m in Orders
select m;
query = query.Skip(1 + 10).Take(10);
query.Dump();
Run Code Online (Sandbox Code Playgroud)
Mar*_*zek 15
发生错误,因为您在第一次查询后使用var和编译推断query类型IOrderedEnumerable<T>,并且您尝试IEnumerable<T>使用Skip/ Takecalls 分配它:
无法隐式将类型'
System.Collections.Generic.IEnumerable<Order>' 转换为'System.Linq.IOrderedEnumerable<Order>'.存在显式转换(您是否错过了演员?)
如果你在开头输入query,IEnumerable<T>一切都会正常工作
IEnumerable<Order> query = from m in Orders
orderby m.ID descending
select m;
query = query.Skip(10).Take(10);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
11854 次 |
| 最近记录: |