【问题标题】:How to do sum of a column with LINQ?如何用 LINQ 对列求和?
【发布时间】:2014-01-06 14:07:01
【问题描述】:
  var GrandTotal = dt.AsEnumerable().Sum(cols => Convert.ToDecimal(cols.Field<string>("TotalPrice"))); 

给出错误:

Unable to cast object of type 'System.Decimal' to type 'System.String'

如何改正?

【问题讨论】:

    标签: c# linq datatable linq-to-dataset


    【解决方案1】:

    您的TotalPrice 列包含十进制值,但您正尝试将行字段值转换为string。改为直接转换为decimal

    var GrandTotal = dt.AsEnumerable()
                       .Sum(r => r.Field<decimal>("TotalPrice")); 
    

    【讨论】:

    • 谢谢你.. @Sergey Berezovskiy
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-06-11
    • 2023-03-17
    • 2021-08-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-05-10
    相关资源
    最近更新 更多