2016-02-03 76 views
1

我有這樣的對象的列表:如何使用LINQ查詢對象列表中數組中的特定對象?

var obj = 
[ 
    {a : [{v:1},{x:1}] }, 
    {a : [{y:1},{t:2}] }, 
    {a : [{z:1},{s:3}] } 
] 

我想選擇有元素的列表只對象,並且其中至少一個具有屬性的「x」。在這種情況下,我想讓LINQ返回{a:[{v:1},{x:1}]}。 喜歡的東西

obj.Where(s => 
    foreach(var o in s.a){ 
     if(o.x) return true; 
    } 
    return false; 
) 

回答

1

您正在尋找.Any()

obj.Where(s => s.a.Any(o => o.x)).ToList()); 
相關問題