如何编写返回元素的ROWNUMBER与id ==的LINQ语句?LINQ语句返回ID为==的东西的元素的rownumber?
11
A
回答
12
还有就是要做到这一点,我所知道没有直接的方法的。您必须将整个查询拖放到客户端,然后从那里您可以在行号中进行投影。作为替代,您可以编写一个使用ROW_NUMBER的存储过程,然后将该过程从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));
}
}
3
您应该能够使用Skip和Take扩展方法来完成此操作。
例如,如果你想第10行:
from c in customers
where c.Region == "somewhere"
orderby c.CustomerName
select new {c.CustomerID, c.CustomerName}
.Skip(9).Take(1);
+3
我不认为这是答案这个问题正在被问到,但它得到了提升,所以我将它留在这里。 – 2009-07-15 17:09:10
1
如何投影行号插入LINQ查询结果
How To Project a Line Number Into Linq Query Results
+3
在Linq to SQL中不支持Select的重载。会抛出一个NotSupportedException()。 – 2009-07-15 17:07:12
相关问题
- 1. if语句不返回任何东西
- 2. Linq的语句返回行
- 3. 返回语句不返回任何东西
- 4. 检查如果SELECT语句返回的东西与IF
- 5. Mysqli SELECT语句的问题不会返回任何东西
- 6. Linq查询不返回任何东西
- 7. LINQ to SQL返回语句
- 8. codeigniter选择语句不返回任何东西
- 9. return语句在python递归中不返回任何东西
- 10. IF语句或更有效的东西?
- 11. SELECT语句返回ID
- 12. linq - 选择不等于东西的元素
- 13. 获取资源数组手动元素返回任何东西
- 14. 没有“返回任何东西”的servlet的正确语法?
- 15. 类似于stdlib bsearch的东西,它立即返回更小的元素
- 16. mysql_fetch_array返回两样东西
- 17. 怎样才能返回return语句不返回元素?
- 18. 返回链接列表中的东西
- 19. PHP:如何返回正确的东西
- 20. PHP PDO + MSSQL返回怪异的东西
- 21. 的getJSON不返回任何东西
- 22. WebClient的DownloadString不返回任何东西
- 23. kABPersonEmailProperty返回怪异的东西
- 24. 文档化,只是返回的东西
- 25. 如何从AlamoFire返回的东西?
- 26. Flex 4 VGroup.getElementAt()返回元素的ID
- 27. 阿拉伯语字母Scrapy返回一些奇怪的东西
- 28. Linq语句为所有条目返回相同的结果
- 29. 为什么遵循XPath语句返回所有“a”元素?
- 30. 生成n元素集的子集;函数不返回任何东西
谢谢,斯科特。所以我想你会ToList()它,然后IndexOf()? – 2009-07-15 17:13:13