2010-04-06 210 views
3

我有一個客戶端請求,無論客戶端設置如何,所有時間都將顯示在太平洋時區中。我想避免一個場景,我必須在每次顯示時調用一個函數,而只需要一個點就可以進行切換。我可以強制ASP.Net網站在特定時區顯示時間嗎?

我在想一個自定義文化可能會做的伎倆,但我想問之前,我開始了一個潛在的盲目的衚衕(或錯過一些簡單的事情)。

回答

4

你可以使用TimeZone.GetUTCOffset()DateTime.UtcNow()

基本上得到UTC時間和偏移根據您感興趣的時區。

善良,

+0

請問這種方法需要在哪裏進行顯示日期時間字段或東西我可以用一個母版頁,並將它向下級聯到各個領域各個領域的應用?我可能會問太多,但我希望爲整個網站提供DRY解決方案。 – KevDog 2010-04-06 14:19:43

+0

我想知道Jon Skeet的Noda時間庫會在完成時處理這種情況。 – KevDog 2010-04-06 14:27:33

0

如果您使用UTC存儲時間,則可以輕鬆轉換爲任何您想要的值。邁克爾布魯姆有一些相當古老的代碼,可以幫助你與自定義TimeZone。硬編碼偏移量會在DST啓動時產生錯誤。

注意:我沒有在Michael的網站上使用過這個代碼。

http://www.michaelbrumm.com/simpletimezone.html

+0

我一定要避免硬編碼的情況,所以謝謝提醒! – KevDog 2010-04-06 14:26:23

相關問題