2012-11-27 81 views
0

我有Class下找到項目的屬性列表

class Employee 
{ 
    public int EmpNo{get;set;} 
    public string Name{get;set;} 
    public string Designation{get;set;} 
} 

的定義,我有一個員工列表

List<Employee> 

我可以找到類似的指定員工的列表,使用的FindAll()方法。

但我想有一個EmpNo列表(或數組),而不是員工列表。我可以使用for循環來構造,但使用謂詞需要不同的答案。我該怎麼做?或者不可能?我認爲早些時候已經有類似問題的解決方案,但現在還沒有解決。

可能類似於FindAll(...)。ToArray()。


編輯

好吧,我得到了答案。

FindAll(emp => emp.Designation.Equals("Executive")).Select(item => item.EmpNo).ToArray() 

回答

1

另一種方法是;

employees 
.Where(emp => emp.Designation.Equals("Executive")) 
.Select(item => item.EmpNo).ToList() 

FindAll和Where之間有輕微的性能差異,看看這個;

FindAll vs Where extension-method

相關問題