Linq to sql LINQ到SQL十进制值之和

Linq to sql LINQ到SQL十进制值之和,linq-to-sql,decimal,sum,Linq To Sql,Decimal,Sum,我搞不懂如何对十进制值进行简单的求和 Table<StaffTime> times = ctx.GetTable<StaffTime>(); var query = from t in times select new { t.Hours.Sum() } 求和不是一种扩展方法吗?我错过了什么 鲍勃试试这个: var sum = (from t in times se

我搞不懂如何对十进制值进行简单的求和

Table<StaffTime> times = ctx.GetTable<StaffTime>();

var query = from t in times
            select new 
            {
               t.Hours.Sum()
            }
求和不是一种扩展方法吗?我错过了什么

鲍勃

试试这个:

var sum = (from t in times select t.Hours).Sum();
当然,这是假设t.Hours是以下类型之一:

十进制 双重的 Int32 Int64 可空 可空 可空 可空 可空

试试这个:

var sum = (from t in times select t.Hours).Sum();
当然,这是假设t.Hours是以下类型之一:

十进制 双重的 Int32 Int64 可空 可空 可空 可空 可空


Sum是IEnumerable或int或其他任何对象上的扩展方法。t、 小时是一个单一的十进制值,所以不能求和


如果您想要小时数的总和,请写入times.Sumt=>t.hours.

sum是IEnumerable或int或其他任何形式的扩展方法。t、 小时是一个单一的十进制值,所以不能求和


如果您想要小时数的总和,请使用write times.Sumt=>t.hours.

作为提示,对于代码片段,请使用101010按钮对其进行格式化,否则会丢失换行符、通用参数等。您好,bobuva-看起来您已经问了很多问题,但没有将任何答案标记为已接受。如果问题的任何答案解决了您的问题,您应该返回并使用帖子中的复选标记图标标记接受的答案。作为提示,对于代码片段,请使用101010按钮对其进行格式化,否则会丢失换行符、通用参数、,等等,你好,波布瓦-看起来你已经问了很多问题,但没有将任何答案标记为已接受。如果你的问题的任何答案解决了你的问题,你应该回顾它们,并使用帖子中的复选标记图标标记一个接受的答案。安德鲁,我正在使用select new创建一个匿名类型,如下所示:var query=from t in times select new{t.Hours.Sum,t.StaffID,…};我不确定我是否可以在这种情况下使用Sum扩展方法。你是正确的-Sum方法对你的情况不起作用。Andrew,我正在使用select new创建一个匿名类型,如下所示:var query=from t in times select new{t.Hours.Sum,t.StaffID,…};我不确定我能不能在这种情况下使用Sum扩展方法。你是对的,Sum方法对你的情况不起作用。