SQL Server CE LINQ中的日期时间逻辑

SQL Server CE LINQ中的日期时间逻辑,linq,entity-framework,sql-server-ce,Linq,Entity Framework,Sql Server Ce,我的对象“Job”具有LastTimeFinishedRunning(日期时间)和RunIntervalMinutes(整数)。我需要将它们相加,并与当前时间进行比较 大概是这样的: Job jobToRun = ctx.Jobs.Where (job => DateTime.Now > Job.LastTimeFinishedRunning.Add(TimeSpan.FromMinutes(job.RunIntervalMinutes))).FirstOrDefault(); l

我的对象“Job”具有LastTimeFinishedRunning(日期时间)和RunIntervalMinutes(整数)。我需要将它们相加,并与当前时间进行比较

大概是这样的:

Job jobToRun = ctx.Jobs.Where
(job => DateTime.Now > Job.LastTimeFinishedRunning.Add(TimeSpan.FromMinutes(job.RunIntervalMinutes))).FirstOrDefault();
long ticks = DateTime.Now.Ticks;
Job jobToRun = ctx.Jobs.Where
(job => ticks > Job.LastTimeFinishedRunning + job.RunIntervalMinutes * 1000 * 10000).FirstOrDefault();
当然,添加不起作用

这两者都不起作用:

DateTime.Now > EntityFunctions.AddMinutes(job.LastTimeFinishedRunning, job.RunIntervalMinutes)
或者这个:

DateTime.Now > System.Data.Objects.SqlClient.SqlFunctions.DateAdd("minute", job.RunIntervalMinutes, job.LastTimeFinishedRunning)
…因为它是SQL Server CE提供程序

有什么建议吗?Thx

更新:

我想我唯一的选择是通过在DB中将标记从DateTime切换到long来在LastTimeFinishedRunning中存储标记。所以代码看起来像这样:

Job jobToRun = ctx.Jobs.Where
(job => DateTime.Now > Job.LastTimeFinishedRunning.Add(TimeSpan.FromMinutes(job.RunIntervalMinutes))).FirstOrDefault();
long ticks = DateTime.Now.Ticks;
Job jobToRun = ctx.Jobs.Where
(job => ticks > Job.LastTimeFinishedRunning + job.RunIntervalMinutes * 1000 * 10000).FirstOrDefault();