我在LINQ中寻找日期比较,在谷歌搜索中找到了一个代码。
var currentDate = DateTime.Now.Date;
VisitorLog日志=数据库。上下文.访问者日志.其中(vl=>vl.inDate.Date==currentDate(.FirstOrDefault((;
我需要知道上面的代码是否正常工作。
我如何比较特定格式的日期,就像我在sql server 中比较日期一样
compare(varchar(10),mydatefield,112)>=compare(varchar(10),@mydatefield,112)
所以请指导我如何使用linq来比较日期,就像上面的格式一样。
感谢
问题是,您很少会以特定格式比较日期(除非您想将它们作为字符串或其他形式进行比较(。因此引入了DateTime结构。
无论如何,比较日期最常用的方法不是检查是否相等,而是实际检查日期是否在特定范围内。例如:
startDate <= order.OrderDate && order.OrderDate < endDate
这个链接能帮到你吗?
如何在LINQ中比较日期?
where t.CreateDate.Date < DateTime.Today.AddMonths(-1)
将字符串解析为DateTime对象时,格式很重要。一旦你完成了这项操作,并且你有两个DateTime对象,那么比较它们的Date属性是正确的做法。Date属性返回时间设置为凌晨12:00的DateTime对象
为了正确解析日期,可以将IFormatProvider传递给DateTime.parse((方法。例如CultureInfo对象:
DateTime d = DateTime.Parse("07/04/2011", CultureInfo.GetCultureInfo("en-us"));