C# 将Sqlite中的DateTime与实体和Linq进行比较
我正在尝试运行以下操作:C# 将Sqlite中的DateTime与实体和Linq进行比较,c#,linq,sqlite,datetime,entity-framework-6,C#,Linq,Sqlite,Datetime,Entity Framework 6,我正在尝试运行以下操作: backupEvents = backupEvents.Where(e => e.Timestamp >= DateTime.Now - new TimeSpan(0, 1, 0, 0)); 但这给了我一个错误的说法 “DbathmeticExpression参数必须具有数字公共类型” 搜索StackOverflow,我找到了 所以我试着: backupEvents = backupEvents.Where(o => DbFunctions.Diff
backupEvents = backupEvents.Where(e => e.Timestamp >= DateTime.Now - new TimeSpan(0, 1, 0, 0));
但这给了我一个错误的说法
“DbathmeticExpression参数必须具有数字公共类型”
搜索StackOverflow,我找到了
所以我试着:
backupEvents = backupEvents.Where(o => DbFunctions.DiffHours(o.Timestamp, DateTime.Now) <= 1);
backupEvents=backupEvents.Where(o=>DbFunctions.DiffHours(o.Timestamp,DateTime.Now)找到了一种方法-这种方法有效:
DateTime offsetHour = DateTime.Now.Add(new TimeSpan(-1, 0, 0));
backupEvents = backupEvents.Where(e => e.Timestamp >= offsetHour);