我的对象“工作”具有LastTimeFinishedRunning
哪个是DateTime
,RunIntervalMinutes
哪个是int
. 我需要将它们加在一起并与当前时间进行比较。
像这样的东西:
Job jobToRun = ctx.Jobs.Where
(job => DateTime.Now > Job.LastTimeFinishedRunning.Add(TimeSpan.FromMinutes(job.RunIntervalMinutes))).FirstOrDefault();
好吧,这.Add()
当然行不通....
两者都不起作用:
DateTime.Now > EntityFunctions.AddMinutes(job.LastTimeFinishedRunning, job.RunIntervalMinutes)
或这个:
DateTime.Now > System.Data.Objects.SqlClient.SqlFunctions.DateAdd("minute", job.RunIntervalMinutes, job.LastTimeFinishedRunning)
...因为它是 SQL Server CE 提供程序
有什么建议么?谢谢。
更新:
我想我在这里唯一的选择是通过在 DB中LastTimeFinishedRunning
切换DateTime
来存储刻度。long
所以代码看起来像这样:
long ticks = DateTime.Now.Ticks;
Job jobToRun = ctx.Jobs.Where
(job => ticks > Job.LastTimeFinishedRunning + job.RunIntervalMinutes * 1000 * 10000).FirstOrDefault();