我有日期時間,我從我的數據庫中獲取的實例,我想從DateTime.Now
減去它,看看獲得通過4小時。我怎麼做?如何從另一個減去一個日期時間?
還當我應該使用DateTime.UTCNow
或DateTimeOffset
我有日期時間,我從我的數據庫中獲取的實例,我想從DateTime.Now
減去它,看看獲得通過4小時。我怎麼做?如何從另一個減去一個日期時間?
還當我應該使用DateTime.UTCNow
或DateTimeOffset
您可以使用減法運算符來獲得一個TimeSpan
:
private static readonly TimeSpan MinimumTime = TimeSpan.FromHours(4);
...
if ((dateFromDatabase - DateTime.Now) > MinimumTime)
{
...
}
至於是否需要UTCNow
或Now
...這將取決於發生了什麼時區,當您從數據庫中讀取數據。 DateTime
是不是在這方面:(
非常清楚,如果你能獲取值作爲DateTimeOffset
與啓動,那麼你可以使用DateTimeOffset.Now
代替,它應該是簡單的工作,任何時區的問題。
首先谷歌打..
也重複:http://stackoverflow.com/questions/6304514/how-to-subtract-datetime-values-and-get-在時間 – rciq
除了那不是真正做到這一點的慣用方式,因爲你可能想使用減法運算符* *。 –
當然,但我的觀點更多的是,他可以在瀏覽器的地址欄中鍵入2個單詞以獲得答案。 ;)該頁面上還描述了運算符樣式。 :) –
試試這個:
bool fourHoursPassed = date.AddHours(4) < DateTime.Now;
或這實際執行減法:
bool fourHoursPassed = (DateTime.Now - date).TotalHours > 4;
DateTime.Subtract
或
DateTime myDateTime = someValue; TimeSpan ts = DateTime.Now -myDateTime; if(ts.Hours>=4) { doSomething(); }
希望它能幫助。
DateTime dt = new DateTime(2011,07,10); DateTime dob = new DateTime(1987,07,10);
你可以簡單地減爲: 時間跨度年齡= DT - 出生日期;
重複所有的Stackoverflow ... http://stackoverflow.com/questions/2624687/c-how-do-i-subtract-two-dates – Binil
-1,因爲你沒有做任何研究,甚至想到你自己。 –
我搜索谷歌。我擔心會mistake..it的是一個很大的代碼的一部分,我有 – Matrix001