如何解决SQL Server中的日期与C#DateTime的比较
我在SQL Server数据库中有一个DateTime
列。数据存储如下:
2020-10-04 23:45:00.527
我试图将以下日期与当前日期进行比较(数据库中的日期应小于当前日期)
DateTime today = DateTime.Now.Date;
var result = (from c in TableName
where (c.Email == email) &&
c.Password == password && c.Status == 1 &&
c.ValidTill.Date <= today
select c).ToList();
但是不幸的是我遇到了这个异常
LINQ to Entities不支持'Date'。仅支持初始化程序,实体成员和实体导航属性
即使尝试了以下方法,该方法似乎也不起作用:
DbFunctions.TruncateTime(c.ValidTill)
我的比较就像这样-
2020-10-04 23:45:00 (Datetime in database) <= 2020-10-10 23:00:00 (current date & time)
解决方法
您不需要.Date
c.ValidTill <= today
或仅与日期比较
EntityFunctions.TruncateTime(x.ValidTill) <= today.Date
需要完成工作。
, var today = DateTime.Now;
var result = (from c in TableName
where (c.Email == email) &&
c.Password == password && c.Status == 1 &&
c.ValidTill <= today
select c).ToList();
hope it will work.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。