我有这段代码
var late_list = context.Results
.Where(r => ((TimeSpan)r.time_late).TotalHours > 0)
.ToList();
它不喜欢TotalHours
的东西。错误是:"指定的类型成员' TotalHours' LINQ to Entities"
那么,如何使用时间跨度查询? ('时间'输入SQL)。
答案 0 :(得分:0)
我刚用新的时间跨度来比较。
TimeSpan zero_time = new TimeSpan(0, 0, 0);
var late_list = context.Results.Where(r => ((TimeSpan)r.time_late) > zero_time).ToList();
答案 1 :(得分:0)
请检查System.Data.Entity.DbFunctions
我有一个where子句,我必须忽略DateTime where子句中的Time。
.Where(t => System.Data.Entity.DbFunctions.TruncateTime(t.LogTimeStamp) >= fromDate)
.Where(t => System.Data.Entity.DbFunctions.TruncateTime(t.LogTimeStamp) <= toDate)
对于您的情况,请检查DbFunctions.DiffHours Methods并考虑使用EntityFramework 6.当您使用TotalHours时,它可能无法直接帮助您。