2010-01-11 84 views
1

我有一個:C#/ LINQ /獲取匹配條件的子集合的所有元素?

ObservableCollection<X> x_collection = new ObservableCollection(); 

public class X 
{ 
    public X() 
    { 
     Items = new ObservableCollection<Y>(); 
     for(int i = 0; i < 10; i++) 
     { 

      Items.Add(new Y(i % 2 == 0)); 
     } 
    } 
    public ObservableCollection<Y> Items {get; set;} 
} 

public class Y 
{ 
    public Y() : this(true) {} 
    public Y(bool y) { MyProperty = y; } 
    public bool MyProperty { get; set; } 
} 

如何創建LINQ查詢將返回一個IEnumerable或的ObservableCollection,將只能得到有他們myProperty的==真ÿ元素?我意識到這可能是一個非常簡單的問題,但我對LINQ atm很困惑。

如果可能的話,我想要求一個拉姆達查詢 - 他們更容易讓我明白

回答

6
var result = Items.Where(y => y.MyProperty); 

var biggerResult = x_collection.SelectMany(x => x.Items.Where(y => y.MyProperty)); 
+0

那豈不是回報的項目僅一個X?我需要整個x_collection的結果? – Maciek 2010-01-11 19:45:59

+0

@Maciek,你沒有說,:) ..編輯答案。 – 2010-01-11 19:46:38

+0

讓我看看這是否有效.... – Maciek 2010-01-11 19:48:38

相關問題