2010-10-20 77 views
0
public class MyClass { 

    List<MyOtherClass> myInnerList; 

} 

問題比方說,我有以下聲明別處:C#在VS2005:與列表

List<MyClass> myOuterlist; 

我怎麼會快速生成使用VS2005在C#中myInnerLists的名單?

+0

什麼是MyClass的和MyOtherClass之間的關係? – Kimi 2010-10-20 09:21:35

+0

只有2個不同的類。它們之間不存在相關關係。 – 2010-10-20 09:23:43

+0

這個問題怎麼樣? – 2010-10-20 09:32:25

回答

3

爲什麼不是一個簡單的循環?

List<List<MyOtherClass>> innerLists = new List<List<MyOtherClass>>(); 
for (int i = 0; i < myOuterList.Count; i++) 
{ 
    innerLists.Add(myOuterList[i].myInnerList); 
} 
+0

我想可能有一些C#糖來解決這個問題。 – 2010-10-20 09:25:03

+3

@Craig,語法糖存在,它被稱爲Linq。但它不適用於VS2005 ...無論如何,你可以通過使用foreach而不是 – 2010-10-20 09:29:52

0

,如果你想要的名單壓扁成MyOtherClass列表:

List<MyOtherClass> list = m.SelectMany(x => x.myInnerList).ToList(); 
+0

上面的代碼看起來更好,這不是問題的問題,並且OP使用VS2005,所以Linq不是一個選項 – 2010-10-20 09:32:36