2013-11-21 70 views
0

獲得集合項目的具體名單我有這樣如何使用字符串變量使用Extention選擇方法

class Processing 
{ 
public string Region { get; set; } 
public Car _car {get;set;} 
public double Kilometer { get; set; } 
} 

的類然後,我創建了處理列表

List<Processing> process=new List<Processing>() 

然後我用數據填充列表。如您所知,有一個Extention Select方法。我可以用

var result=process.Select(a=>a.Region) 

但我想用lambda表達式作爲dynamic.Like這

string property="Region"; 
var result=process.Select(a=>property) 

有沒有辦法通過使用它的字符串名,來獲取列表的性能數據。

回答

0

您可以使用反射此

string property="Region"; 
var prop = typeof(Processing).GetProperty(property); 
var result=process.Select(a=>prop.GetValue(a, null)); 
+0

德米特羅, 我用上面的代碼。但結果不是我想要的。區域存儲的城市名稱,如{伊斯坦布爾,安卡拉,伊茲密爾}。但結果返回值{5,6,7}等... –

+0

您錯過了'GetValue'的第二個參數,它應該作爲'null'傳入。 –

+0

@AykarKr。如果你使用正確的代碼(它提供了第二個參數爲null),你應該得到正確的結果。 –

相關問題