问题描述
我有一个名为CourseEpisode的表,该表具有不同的属性,其中之一是TimeSpan
public TimeSpan time{ get; set; }
var TotalTime = new TimeSpan(c.CourseEpisods.Sum(e => e.time.Ticks))
运行项目时,我会遇到此错误:
InvalidOperationException:LINQ表达式'(EntityShaperExpression: 实体类型:CourseEpisod ValueBufferExpression: (ProjectionBindingExpression:空投影成员) IsNullable:错误 ).Time.Ticks'无法翻译。以一种可以翻译的形式重写查询,或者通过插入对AsEnumerable(),ToList()或ToListAsync()的调用来显式切换到客户端评估
请帮助我
解决方法
这是一个例子
void Main()
{
var table = new List<TimeSpan>
{
new TimeSpan(1,0),new TimeSpan(0,30,new TimeSpan(2,10)
};
TimeSpan total = TimeSpan.Zero;
table.ForEach(t => total = total.Add(t) );
Console.WriteLine($"Total Duration Is = {total.ToString()}");
}
那你得到
Total Duration Is = 03:30:10