質問

列の平均P&Lを取得しようとしています。列はdouble型のものですが、次のようなエラーが発生し続けます。

追加情報:集約引数の構文エラー:可能な「子」修飾子を持つ単一の列引数を期待します。

この行が実行されているときに発生します。

avgFiveSbefore = (double)dt.Compute("AVG(5sBeforePnL)", "");
.

また、明確にするためのいくつかの追加のコードです:

dt.Columns.Add(Columns.FiveSecBeforePnL, typeof(double));

foreach(DataRow row in dt.Rows)
{
  row[Columns.FiveSecBeforePnL] = some value;
}

double avgFiveSbefore;
avgFiveSbefore = (double)dt.Compute("AVG(5sBeforePnL)", "");
.

役に立ちましたか?

解決

列名を角かっこで囲むようにしてください。

avgFiveSbefore = (double)dt.Compute("AVG([5sBeforePnL])", "");
.

LINQを使用して同じことをすることもできます。

double avgFiveSbefore = dt.AsEnumerable()
                            .Average(r =>
                                r.Field<double>(Columns.FiveSecBeforePnL));
.

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top