在IE中从IEnumerable类型转换为ObservableCollection

时间:2012-09-24 12:42:26

标签: c# linq casting lambda

我希望获得所有有效竞价的地方。我尝试了这个,但我得到了空。

testObservableList = testObservableList.Where(
                         x => x.IsActiveForBid) as ObservableCollection<Places>;

3 个答案:

答案 0 :(得分:4)

试试这个。

testObservableList = 
new ObservableCollection(testObservableList.Where(x => x.IsActiveForBid)); 

这将生成当前IEnumerable的浅表副本并将其转换为ObservableCollection

答案 1 :(得分:3)

虽然ObservableCollection<T>IEnumerable<T>,但相反的情况并不成立。尝试构造函数:

new ObservableCollection<SometypeType>(
              testObservableList.Where(x => x.IsActiveForBid))

答案 2 :(得分:2)

试试这个:

ObservableCollection coll1 = new ObservableCollection(testObservableList.Where(x => x.IsActiveForBid);

我想这会做到。