是否可以在Linq查询中使用"分页"功能?假设我有一些像这样的XML:
<Root>
<BetaSection>
<Choices>
<SetA>
<Choice id="choice1">Choice One</Choice>
<Choice id="choice2">Choice Two</Choice>
<Choice id="choice3">Choice Three</Choice>
.
.
.
<Choice id="choice48">Choice Forty-Eight</Choice>
<Choice id="choice49">Choice Forty-Nine</Choice>
<Choice id="choice50">Choice Fifty</Choice>
</SetA>
</Choices>
</BetaSection>
</Root>
Run Code Online (Sandbox Code Playgroud)
如果我想实现分页功能,我是否能够为LINQ查询提供偏移量,以便我可以从第11个元素开始到第20个元素结束?如果是这样,如果数据是对象列表而不是XML,查询是否会有所不同?
Jam*_*ran 20
var q = from X in Choices.Skip((page-1)*pageSize).Take(pageSize)
select X;
Run Code Online (Sandbox Code Playgroud)
现在,如果你需要一个where子句,它会变得有点棘手:
var q = (from X in Choices
where x.SomeField == SomeValue
select X).Skip((page-1)*pageSize).Take(pageSize);
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
5336 次 |
最近记录: |