为什么 2013-12-28 21:40:43 小于 2013-12-28 22:18:23
我有这种方法来检索过去的开始日期的记录。
repository.Get(x => x.StartDate <= DateTime.Now && (x.EndDate > DateTime.Now || !x.EndDate.HasValue)
如果我将StartDate更改为 2013-12-27 ,则会提取记录。
我在这里缺少什么?
提前致谢
更新
解决方案:
DateTime now = DateTime.Now;
然后在表达式中使用它。
答案 0 :(得分:1)
您的数据库和您的网站在2台机器上?
linq中的DateTime.Now将翻译sql函数,因此它使用db机器时间
和var now = DateTime.Now使用网站机器时间
所以检查数据库机器系统日期时间
答案 1 :(得分:0)
我通过将DateTime.Now存储在局部变量中并在表达式中使用它来解决它。
DateTime now = DateTime.Now;