我不确定这是执行以下代码的最佳方法。我没有在另一个 foreach 中的 foreach 上出售。这可以用 Linq 做得更好吗?
*我知道更好的可能是
a) 性能更高
b) 更容易阅读/更优雅
c) 以上所有
注意:接受 .NET 3.5 解决方案 :) 注意 2:这两个 IList 是通过 Linq2Sql 的多记录集存储过程的结果。
这是使相信代码:
// These two lists are the results from a IMultipleResults Linq2Sql stored procedure.
IList<Car> carList = results.GetResult<Car>().ToList();
IList<Person> people = results.GetResult<Person>().ToList();
// Associate which people own which cars.
foreach(var person in people)
{
var cars = (from c in cars
where c.CarId == person.CarId
select c).ToList();
foreach (var car in cars)
{
car.Person = person;
}
}
干杯:)