如何在LINQ中循环集合并传递数据

Mac*_*ver 3 .net c# linq lambda

我如何在LINQ中执行此操作 - 所以我不必使用ForEach或循环?

我似乎无法弄清楚如何在满足某些条件时传递列表,这样就可以使用LINQ循环集合.

products.ForEach(delegate(CustomEcomProducts p)
{                            
  p.VariantProducts = variants.Where(prod => prod.VariantParentID == p.ProductID)
                        .ToList();
});
Run Code Online (Sandbox Code Playgroud)

Dan*_*rth 6

这不是LINQ的用途.LINQ中的Q代表"查询".

最好/最干净/最易读的方法如下:

foreach(var product in products)
    product.VariantProducts = variants.Where(x => x.VariantParentID == p.ProductID)
                                      .ToList();
Run Code Online (Sandbox Code Playgroud)