数据表中的表达式附加数据而不是添加

Expression in datatable appends data instead of adding

我有一个包含几列的数据表。 我正在尝试使用 datacolumn.expression 添加列值。 用于添加的列是 decimal 类型。此外,计算列也是十进制的。但是在处理表达式时,(如 datatable column1 + datatable column2)它只是附加数据。

SlNo Name F1 F2 F3
1     A    1  2  3
2     B    3  4  5

我期待与此类似的输出。

SlNo Name F1 F2 F3 Total
1     A    1  2  3  6
2     B    3  4  5  12

我试过的。

dtTempData.Columns.Add("Total", typeof(Decimal));           
dtTempData.Columns["Total"].Expression = "[F1]+[F2]+[F3]";

现在我得到的输出是以下方式

123
345

它只是在任何帮助之前附加 data.Thanks。

我不知道为什么会这样。

dtTempData.Columns.Add("Total", typeof(Decimal));
dtTempData.Columns["Total"].DefaultValue = 0;
dtTempData.Columns["Total"].Expression = expression;

这是我创建列的方式,但是在基于表达式执行求和时,它附加了数据。 我正在从另一个字符串类型的数据表导入数据。所以我尝试通过以下方式转换数据。

 string expression="Convert(F1, 'System.Decimal') + Convert(F2, 
'System.Decimal') + Convert(F3, 'System.Decimal')"

现在可以正常使用了,总计列具有相加后的值。感谢你的帮助。