转换为LINQ

JEP*_*AAB 0 c# linq

我有一个包含另一个列表的列表.我想在主列表中循环,然后在所有辅助列表中循环,直到辅助列表中的对象的id与所需的id匹配.然后应返回主列表.

是否可以将以下代码转换为LINQ?

var myID = "1"; //Just a stub
var tempItem = null;

//Loop each itemA from list A
foreach (var itemA in listA)
{
    //Loop each itemB from itemA.listB
    foreach (var itemB in itemA.listB)
    {
        //Compare IDs
        if (itemB.ID == myID)
        {
            //If IDs of itemB match, return itemA
            tempItem = itemA;
            break;
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

Nza*_*all 5

tempItem = listA.FirstOrDefault(a=> a.itemB.Any(b=>b.ID==myID))
Run Code Online (Sandbox Code Playgroud)