如何编写返回元素的ROWNUMBER与ID ==东西LINQ声明?
Answer 1:
有没有直接的方法来做到这一点,我所知道的。 你不得不拉整个查询到客户端,并从那里,你可以在行号项目。 作为替代方案,你可以写一个使用ROW_NUMBER一个存储过程,然后打的PROC从LINQ到SQL。
在你的情况,你要去的唯一途径能够做到这将是客户端。 请记住下面的语句是不会在服务器上要做到这一点,但会拉低你的整个表格并获得客户的指标...
using (var dc = new DataClasses1DataContext())
{
var result = dc.Users
.AsEnumerable() // select all users from the database and bring them back to the client
.Select((user, index) => new // project in the index
{
user.Username,
index
})
.Where(user => user.Username == "sivey"); // filter for your specific record
foreach (var item in result)
{
Console.WriteLine(string.Format("{0}:{1}", item.index, item.Username));
}
}
Answer 2:
您应该能够使用Skip和Take扩展方法来做到这一点。
例如,如果你想第10行:
from c in customers
where c.Region == "somewhere"
orderby c.CustomerName
select new {c.CustomerID, c.CustomerName}
.Skip(9).Take(1);
Answer 3:
如何投影行号插入LINQ查询结果
如何投影行号插入LINQ查询结果
文章来源: LINQ statement that returns rownumber of element with id == something?