[英]entityframework can't return the records in database with datetime.now condition
您比较DateTime
在你的数据库的价值值DateTime.Now
返回当前时间(包括毫秒),可能永远不会匹配表中的任何值。
修改查询以选择范围内的值
var minDate = DateTime.Today; // returns today's with time component set to 00:00:00
var maxDate = minDate.AddDays(1);
ViewBag.TrafficEnter = _iTrafficRepository.Get()
.Where(i => i.Type == "ورود" && i.SubmitDateTime >= minDate && i.SubmitDateTime < maxDate).ToList();
假设今天的日期是2016年5月24日,它将返回图像中显示的所有17条记录。
DateTime.Now的问题在于,它意味着一个非常小的日期范围,该范围等于其精度的最小分度,在这种情况下为1毫秒。 除非您使用与DateTime几乎完全相同的值创建记录,否则您将永远不会获得匹配。
您有两种解决方案(可能不适合您的需求);
首先,与其匹配精确的dateTime,不如尝试匹配一个范围,例如,DateTime.Now之前/之后的1小时。 这样的好处是可以控制范围。
或者,您可以尝试将日期值(DateTime.Now.Date)与记录的日期匹配。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.