2013-07-02 25 views
1

我有這個LINQ代碼返回列的總和。 我在這個表中有10列,這些名字是:Role1,Role2,Role3到Role10。如何在運行時動態創建linq代碼並獲得結果

我怎麼能動態在運行時創建LINQ代碼,運行這段代碼和得到的結果所有列不重複的代碼?

例如:

decimal result = 0; 
for(int i=0; i <=10; i++) 
{ 
    result += STList.Where(c => c.Row_Role[i].ID == row.ID).Sum(p => p.Role[i]Current); 
} 
+1

_什麼是'STList'?什麼類型是_「這張桌子」_ ? _ –

回答

0

在這裏你去

decimal result = 0; 
result = STList.Where(c => c.Row_Role.Select(p=>p.ID).Contains(row.ID)).Sum(c => c.Row_Role.Select(p=>p.Current)); 
0

我認爲你正嘗試使用動態結果得到LINQ查詢。

參見here將解決大多數動態linq問題。

相關問題