0
var MyCours = Db.COURS.Where(C => C.CLASSE_ID == ClassID
&& DateTime.Now>= C.START_DATE
&& DateTime.Now <= C.END_DATE)
.ToList();
有些更改仍然不工作!这个Linq查询有什么不对?
var MyCours = Db.COURS.Where(C => C.CLASSE_ID == ClassID
&& DateTime.Now>= C.START_DATE
&& DateTime.Now <= C.END_DATE)
.ToList();
有些更改仍然不工作!这个Linq查询有什么不对?
可能的问题是提供程序无法将DateTime.Compare
投影到SQL语句中。有可能也比较方向的逻辑错误(除非你真的想enddate < now < startdate
),我也建议使用.ToList()
兑现到一个列表:
var theTimeNow = DateTime.Now;
var MyCours = Db.COURS.Where(C => C.CLASSE_ID == ClassID
&& theTimeNow >= C.START_DATE
&& theTimeNow <= C.END_DATE)
.ToList();
投影DateTime.Now
到一个变量隔离的非确定性即确保两次比较是同时进行的。
谢谢你的工作! – Halid 2014-11-21 12:47:55
你会得到什么错误? – 2014-11-21 12:21:57
从数据库中读取数据时,不能在linq查询中使用DateTime类。获取Datetime.Now给一些变量,并尝试在linq查询中使用。此外,DateTime.Compare不能用于liq查询 – PrinceT 2014-11-21 12:22:55
调试器只是跳过它没有错误显示! – Halid 2014-11-21 12:26:27