2010-11-28 84 views
2

不能真正瞭解如何選擇擴展方法與列表裏面工作的另一個列表,像這樣:嵌套列表,我如何使用lambda表達式來完成此操作?

var queries = (from item in list 
       from item2 in list.anotherlist 
       select item2).ToList<MyType>(); 

這是行不通的:

// Gives me a list of List<QueryResult> 
var queries = list.Select(item => item.anotherlist).ToList(); 

回答

5

的運營商的SelectMany應該做的伎倆 - 在這種情況下,它需要一個列表的列表,並壓平它:

var queries = list.SelectMany(sublist => sublist).ToList(); 
+0

謝謝,工作。 – gremo 2010-11-28 03:43:59

0

使用的SelectMany

var queries = list.SelectMany(l => l.anotherList).ToList();