2015-12-14 59 views
0

我找到很多接近的答案,但沒有符合我的情況。我們在衆多國際時區都設有代理機構,爲全美國和歐洲一些國家的物業撥打電話。我知道屬性時區爲「EST」,「PST」等屬性時區的本地數據庫,當然我也知道代理商的當地時間。鑑於當地時區和目標時區,我如何才能找到目標的當前時間C#

我應該使用什麼方法以及什麼時區參數我是否應該通過以確定目前在該物業的時間?如果目標物業位於美國東海岸,我應該通過「EST」嗎?如果目前的日光節約時間是什麼?我會通過「EDT」嗎?我必須說明「東部標準時間」是有作爲1 EST序轉換等...

+0

每個代理計算機都有一個時區設置。數據存儲時,本地時間自動存儲爲UTC。轉換時間時應該非常小心。如果您需要轉換使用以下內容:TimeZoneInfo pacific = TimeZoneInfo.FindSystemTimeZoneById(「Pacific Standard Time」); DateTime time = TimeZoneInfo.ConvertTime(DateTime.Now,pacific); – jdweng

回答

0

我會使用UTC,並指定偏移量,例如:?2015-12-12T06:53:39-05:00會表明它目前01:53:39是在美國東部時間2015-12-12

1

我會使用TimeZoneInfo的靜態方法ConvertTime它將時間從一個時區轉換爲另一個時區。 它收到一個dateTime,一個sourceTimeZone和一個destinationTimeZone。

關於TimeZones,這是每個操作系統都知道的事情,你可以從TimeZoneInfo獲得時區列表,然後這些對象會知道他們是否觀察日光。爲此,您可以使用FindSystemTimeZoneById