2017-04-21 76 views
-2
Program program1 = listProgram.Find(prg => prg.name.Contains("a")); 

我想顯示Find(prg => prg.name.Contains("a")的所有值,所以我如何顯示這個我想使用數組和列表。如何使用此C#lambda表達式

+3

Try * Linq *:'Program [] program1 = listProgram.Where(prg => prg.name.Contains(「a」))。ToArray();' –

回答

8

List<T>.Find只會返回符合條件的列表中的第一個Program。你想要的是一個Where -statement,它返回全部滿足條件的實例。

var programs = listProgram.Where(prg => prg.name.Contains("a")); 

現在你可以用一個foreach例如或也將結果轉換爲一個數組,並通過它的數組中的索引來訪問每個實例重複這些程序。

+0

謝謝你現在在工作。 :) –