我有一个包含另一个列表的列表.我想在主列表中循环,然后在所有辅助列表中循环,直到辅助列表中的对象的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)
tempItem = listA.FirstOrDefault(a=> a.itemB.Any(b=>b.ID==myID))
Run Code Online (Sandbox Code Playgroud)