我有一个:
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 == true的Y元素?我确实意识到这可能是一个非常简单的问题,但我对LINQ atm非常困惑。
如果可能的话,我想要一个lambda查询 - 它们让我更容易理解
答案 0 :(得分:6)
var result = Items.Where( y => y.MyProperty );
var biggerResult = x_collection.SelectMany( x => x.Items.Where( y => y.MyProperty ) );