这里的评价是一个代码段如何重新订购此LINQ的情景
IEnumerable<Car> GetCars()
{
foreach(var request in RequestQueue())
{
RemoveFromQueue(request);
yield return MakeCar(request);//Expensive
}
}
//应用场景1:没问题
foreach(Car c in GetCars())
{
//Do stuff
}
//应用场景2:问题,我已经构建了所有的汽车,但只想要1.
foreach(Car c in GetCars().Where(p=>p.Request.Id==10000))
{
//Do stuff
}
在我开始制作Car之前,是否可以实施评估Where条款?怎么样?
显然,where子句可以根据客户端使用情况而有所不同。
动机:当您将Linq转换为SQL时,.Take(10)转换为Top(10)并在服务器上执行查询。我想要实现这样的事情。
增加了一个动机查询,看是否能帮助 – 2009-05-20 03:30:44