我已经对看似简单的 LINQ 问题进行了大量搜索,但我无法弄清楚如何在不诉诸这样的排序的情况下从具有指定最小值(或最大值)的集合中抓取对象:
dim customers= GetCustomers()
dim youngest = (From c in customers
Order By c.age Ascending).ToList.First
这种(未经测试的代码)结构可以正常工作,但必须对整个客户数组进行排序并放入列表中,以便提取第一个值。这不可能是获得最低限度的最佳方式!
请注意,在这种情况下,我想要整个 c 记录,而不是可以像这样完成的客户的最小年龄(典型示例):
dim customers= GetCustomers()
dim youngest = (From c in customers
Select c.age).Min
甚至
dim customers= GetCustomers()
dim youngest = (From c in customers
Select c).Min(Function(x) x.age)
我一生都无法弄清楚如何在不诉诸排序的情况下获取整个对象(甚至索引)...