我的表由3列(sno,名称,年龄)组成,现在我从数据库中使用额外列(行号)检索此表,我使用以下代码
select * from (
select ROW_NUMBER() over (order by SNo asc)as rowindex,SNo,Name,Age
from tblExample)
as example where rowindex between ((pageindex*10)+1) and ((pageindex+1)*10)
注意:这里pageindex是一个变量,它取一些由用户传递的整数值
我的数据库是sql server 2008,现在我想使用 linq
编写相同的查询任何人都可以将abovesql查询更改为linq。我不能这样做,因为我是linq的新手。我想到了这个问题,请提前帮助我谢谢
答案 0 :(得分:2)
您可以将查询编写为beow
var index=1;
var pageIndex=1;
var pageSize = 10;
data.Select(x => new
{
RowIndex = index++,
Sno = x.Sno,
Name = x.Name,
Age = x.Age
}).OrderBy(x => x.Name)
.Skip(pageSize * (pageIndex - 1)).Take(pageSize).ToList();