我有以下两个类:
public class MyData
{
public MyData2 Data2 {get; set;}
}
public class MyData2
{
public string data {get; set;}
}
我有一个Myist2的IList,我想创建一个集合(理想情况下ObservableCollection
,虽然我可以很容易地转换)MyData。我觉得应该可以使用lambda语句来做到这一点,但我似乎无法提出语法;类似的东西:
IList<MyData2> myData2 = GetData();
ObservableCollection<MyData> myData = new ObservableCollection<MyData>(Data2 = myData2??);
有没有办法使用labda / LINQ执行此操作,还是需要使用foreach
?
答案 0 :(得分:3)
使用Enumerable.Select方法:
var myData = myData2.Select(data2 => new MyData() { Data2 = data2 });
var collection = new ObservableCollection<MyData>(myData);