C# entity framework 总和时间跨度

标签 c# entity-framework linq sum

如何在 Entity Framework 中对列求和并绑定(bind)到标签中?

var result = (from t in db.aktivitaet
                          where t.idrapport == idrapport
                          group t by t.aktotal into d
                         select d).Sum();

            lblsum.Text = Convert.ToString(result.Sum( res => res));

像这样,但如果可能的话,我想像这样用 .toList() 来做:

var result = (from t in db.aktivitaet
                          where t.idrapport == idrapport
                         select new
                         {
                             t.aktotal
                         }).ToList();
            double sum = 0;
            foreach (var item in result)
            {
                sum += Convert.ToDouble(item.aktotal);
            }
            lblsum.Text = sum.ToString();

但是使用第二个代码块我得到了错误: Das Objekt des Typs\"System.TimeSpan\"kann nicht in Typ\"System.IConvertible\"umgewandelt werden。

最佳答案

var result = (from t in db.aktivitaet
                      where t.idrapport == idrapport
                     select new
                     {
                         t.aktotal
                     }).ToList();

var sum = result.Aggregate(TimeSpan.Zero, (total, next) => total.Add(next));

lblsum.Text = sum.ToString();

这应该可以解决问题

关于C# entity framework 总和时间跨度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25744857/

相关文章:

c# - 实体类型 'Access' 需要定义一个主键。如果您打算使用无键实体类型调用 'HasNoKey()'

c# - 带有 Entity Framework 6 的 MySQL

c# - 选择每天的最新条目

c# - 获取表中所有记录的样本

c# - 查找整数列表中是否存在整数

c# - 在 C# 的同一类中的另一个委托(delegate)函数中使用两个委托(delegate)函数的返回 View

c# - 将 SharpArch 与 C# Windows 应用程序一起使用的示例?

c# - Entity Framework 4.3 - TPH 映射和迁移错误

c# - 从 IEnumerable 中选择项目

c# - 如何在 bot 框架 v4 中将对话框设置为欢迎消息