如何解决LINQ表达式无法转换为Property TimeSpan的总和
我有一个名为CourseEpisode的表,该表具有不同的属性,其中之一是TimeSpan
public TimeSpan time{ get; set; }
当我尝试使用此代码获取Episod Time的总和时:
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
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。