0

ある値を別の値で分割したい。式は次のようになります

If (Job2 =0, 0, Job2/Job1) 私が書いたコードは次のとおりです。

 double empJob1Count = empYearMonthGroup
     .Where(x => x.Row["Job2"] != DBNull.Value)
     .Sum(x => x.Row.Field<double>("Job2")/ x => x.Row.Field<double>("Job1"));

ただし、エラーが発生します。演算子「/」は、タイプ「オブジェクト」および「オブジェクト」のオペランドには適用できません。linq c# でこれを行う方法を提案してください。

4

2 に答える 2

1

x結果セレクターには既にパラメーターがあります。正しい構文は次のとおりです。

double empJob1Count = empYearMonthGroup
     .Where(x => x.Row["Job2"] != DBNull.Value)
     .Sum(x => x.Row.Field<double>("Job2") / x.Row.Field<double>("Job1"));
于 2013-04-03T12:59:56.663 に答える
0

Fieldnull 許容型をサポートする拡張メソッドを使用できます。

double empJob1Count = empYearMonthGroup
    .Where(x => x.Row.Field<double?>("Job2").HasValue)
    .Sum(x => x.Row.Field<double?>("Job2").Value / x.Row.Field<double>("Job1"));

ただし、コードの問題は 2 番目のx =>.

于 2013-04-03T13:07:31.843 に答える