1

列の合計を返すこの LINQ コードがあります。このテーブルには、Role1、Role2、Role3 から Role10 という名前の 10 個の列があります。

実行時に 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);
}
4

2 に答える 2

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));
于 2013-07-02T08:53:33.407 に答える
0

動的な結果を使用してlinqクエリを取得しようとしていると思います。

See hereは、ほとんどの動的 linq 問題を解決します。

于 2013-07-02T10:18:56.187 に答える