我是Linq的新手。我有一个客户表。ID、全名、组织、位置是列。我在 Sqlite 中有一个查询返回 2500 条客户记录。例如,我必须从这个结果集中找到 ID=150 的客户的索引。它的客户列表。查询的结果集按组织排序。我尝试使用 FindIndex 和 IndexOf,但前者出错,后者出错 -1。那么,应该怎么做呢?谢谢。
问问题
59219 次
2 回答
85
你不需要使用LINQ
,你可以FindIndex
使用List<T>
:
int index = customers.FindIndex(c => c.ID == 150);
于 2013-08-07T16:40:34.200 回答
34
Linq to Objects 重载了Select方法
customers.Select((c,i) => new { Customer = c, Index = i })
.Where(x => x.Customer.ID == 150)
.Select(x => x.Index);
请记住,您应该在内存List<Customer>
中使用此 Linq to Objects 方法。
于 2013-08-07T16:35:01.120 回答