2010-08-31 67 views
3

我需要一種方法來動態填充此查詢......爲避免重複我會做20次左右幫助asp.net mvc的反射和屬性

public decimal percentage_of_property(string property) 
{ 
    var total = Routines().Where(r=>r.property==true).Count(); 
    return (decimal)100 * total/routines_total(); 
} 

這顯然沒有按」同一個查詢噸工作...但我把它放在那裏,所以你可以看到我想要實現的...

在此先感謝。

回答

2

假設Routine是你能避免反光和使用函數式編程像這樣類型: -

public decimal percentage_of_property(Func<Routine, bool> propertyTest) 
{ 
    var total = Routines().Where(r => propertyTest(r)).Count(); 
    return (decimal)100 * total/routines_total(); 
} 

這樣使用它: -

percentage_of_property(r => r.propertyName) 
+0

這真棒。 – ignaciofuentes 2010-08-31 20:20:16