2013-12-13 26 views
0

我有一個類將當前時間轉換爲web.config中指定的某個特定時間,例如將2.30或2.45添加到當前時間。如何將雙倍值轉換爲日期時間?

這裏是我的類:

Public Shared Function GetGoTime() As DateTime 
    Dim hrs = Double.Parse(ConfigurationManager.AppSettings("Gotime")) 
    Dim GoTime As DateTime = DateTime.Now.AddHours(hrs) 
    Return GoTime 
End Function 

這時候我們增加一個整數工作正常,但是當我們添加類似2.45或7.37小時,那麼這是行不通的。我該怎麼辦?

回答

3

應該由.拆分給定時間解析小時和分鐘分開,然後通過計算以分鐘爲時間值乘以它由60,像使用AddMinutes功能,

Dim hrs = ...your code only to extract the hours; 
Dim minutes = ...your code only to extract only the minutes; 
Dim GoTime As DateTime = DateTime.Now.AddMinutes(hrs*60 + minutes); 
+0

Thinks快速回答,如果我們只想要時間部分,那麼我可以使用GoTime.ToLongTimeString()在我的情況下,我希望 – Vivekh

1

什麼要使用TimeSpan.FromHoursDateTime.Add

Public Shared Function GetGoTime() As DateTime 
    Dim hrs = Double.Parse(ConfigurationManager.AppSettings("Gotime")) 
    Dim GoTime As DateTime = DateTime.Now.Add(TimeSpan.FromHours(hrs)) 
    Return GoTime 
End Function