对字符串类型的数据表列求和
Posted
技术标签:
【中文标题】对字符串类型的数据表列求和【英文标题】:Sum DataTable columns of type string 【发布时间】:2009-04-02 04:25:22 【问题描述】:如何计算字符串类型DataTable
中两行的总和?
就我而言,我无法更改列类型。
我试过这些:
1)
object objSum;
objSum = dt.Compute("Sum(WeightRate)", "");
2)
decimal total = (decimal)dt.Compute("SUM( [WeightRate] )", "");`
但没有运气......
我的桌子:
计重车数 350.50 50 205.00 40
我需要结果
称重车号 555.50 90
【问题讨论】:
【参考方案1】:Compute 方法允许进行一些基本的类型转换:
var sum = dt.Compute("Sum(Convert(WeightRate, 'System.Int32'))");
请参阅DataColumn Expressions 上的 MSDN 帮助,了解有关您可以使用 Compute 方法调用做什么的更多信息。
编辑重新阅读您的问题后,您可能希望转换为 System.Decimal 而不是 System.Int32,但希望您明白了。 ;-)
【讨论】:
@Matt:很抱歉再次提出这个问题。在另一个问题(***.com/questions/8928748/…)上,同样的事情没有奏效。您能否检查一下您的代码是否可以与上面粘贴的链接一起使用?谢谢!! 先生,它不适合我。我在 vb.netDt.Compute("Sum(Convert(deliveredqty,'System.Double'))"))
中尝试过编译时错误 Arugument of filter is missing
所以我像这样更改了 Dt.Compute("Sum(Convert(deliveredqty,'System.Double'))",""))
但它不起作用先生以上是关于对字符串类型的数据表列求和的主要内容,如果未能解决你的问题,请参考以下文章