有没有办法使用像linq这样的东西将这个吸气剂减少到大约一行?我做了搜索,没有找到任何东西。好奇。
private List<UserItem> userItems
{
get
{
List<UserItem> list = new List<UserItem>();
foreach (var item in items) {
list.Add(item.UserItem);
}
return list;
}
}
答案 0 :(得分:5)
简单地:
get {
return items.Select(x => x.UserItem).ToList();
}
Select
:http://msdn.microsoft.com/en-us/library/bb548891(v=vs.110).aspx
基本上,它会将您想要的内容投射到新列表中。在上面的示例中,我们将UserItem
集合中对象的每个items
属性投影到列表中。