linq for fore循环中的for循环

Cal*_*vin 2 c# sql linq

任何人都可以帮助我如何转换以下c#代码使用linq到SQL?通过使用linq到sql,它会执行得更快还是仍然与下面相同?

foreach (var a in all)
    {
        for (int i = 0; i < a.Items.Length; i++)
        {
            if (a.Items[i].Item.TruckItemID.Equals(CarItem.CarItemID))
               {
                   allItems = a.Items[i];
               }
        }
    }
Run Code Online (Sandbox Code Playgroud)

Jus*_*ner 5

看起来像你想要的东西:

allItems = all.SelectMany(a => a.Items)
              .Where(a => a.Item.TruckItemID.Equals(CarItem.CarItemID));
Run Code Online (Sandbox Code Playgroud)

但请记住,执行速度不会加快.LINQ会将您的查询扩展为几乎相同的代码.