2012-09-13 99 views
0

我知道标题不是很好,但我认为代码会更好。如何获取列表中的所有项目都在另一个列表中?

说我有下面的类:

public class Test 
{ 
    public List<Object> ObjectList = new List<Object>; 
} 

现在让我们假设我有一个list<Test> listOfTest是在其列表中100个项目,并在列表中的每个测试对象在其List<Object> ObjectList清单100项。

我可以使用LINQ,Lambda表达式或其他任何方法快速获取每个Test对象的所有对象吗?

目前我必须做到以下几点:

var items = new List<Object>(); 
foreach(var testobj in listOfTest) 
{ 
    items.AddRange(testObj.ObjectList); 
} 

我知道我能做到listOfTest.foreach(),但它真的可以归结为尚需在foreach。

我个人不喜欢这个,认为它几乎是一个黑客,并且必须有更好的方法来做到这一点。所以问题是基本上,有没有更好的方法来做到这一点?

+0

这是一个单层深厚列表,而不是在所有我想做的事。 –

回答

1

如何:

var items = listOfTest.SelectMany(lt => lt.myInnerObject).ToList(); 
+0

谢谢,这真的很有帮助 –

相关问题