两个日期之间的差异,以小时计 [英] Difference between two dates in hours

查看:76
本文介绍了两个日期之间的差异,以小时计的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

var receiveDetails = objDB.GetAllReceivedDetails().Where(a => a.ReceiveDate.Value.Date == DateTime.Now.Date && (((DateTime.Now.Hour) - (a.ReceiveDate.Value.Hour)) <= 1));





上面的代码不能正常工作。如果有人想知道两个日期之间有什么区别那么请回复。



above code is not working.If anyone have idea of making difference between two date then please reply.

推荐答案

首先,永远不要获取DateTime.Now不止一次:它在午夜左右导致间歇性问题,这真的让你感到困惑。获取一次,并将其用于所有检查。

然后尝试:

First of, never fetch DateTime.Now more than once: it leads to intermittent problem around midnight which can really mess you up. Fetch it once, and use it for all checks.
Then try:
DateTime now = DateTime.Now;
var receiveDetails = objDB.GetAllReceivedDetails().Where(a => a.ReceiveDate.Value.Date == now.Date && (now - a.ReceiveDate.Value).TotalHours <= 1);


从日期时间中减去日期时间时,会得到一个时间跨度对象。您可以使用它来获取TotalHours,这是您所追求的数字:



When you subtract a datetime from a datetime you get a timespan object. You can use this to get the TotalHours which is the number you're after:

var receiveDetails = objDB.GetAllReceivedDetails()
       .Where(a => 
               a.ReceiveDate.Value.Date == DateTime.Now.Date && 
               ((DateTime.Now - a.ReceiveDate.Value).TotalHours <=1));





希望有所帮助^ _ ^

Andy



Hope that helps ^_^
Andy


TimeSpan difference = firstDateTime - secondDateTime;
double diffInHours = difference.TotalHours


这篇关于两个日期之间的差异,以小时计的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆