2009-06-05 250 views
1

我有一個Silverlight客戶端與一些ASP.NET Web服務通信,然後修改數據庫。客戶端可以修改數據並通過Web服務將數據發送到數據庫。這些數據按日期組織。如何確保使用正確的DateTime?

顯然,客戶端可以駐留在與ASP.NET服務器不同的時區,因此,如何確保DateTime信息位於數據庫的正確時區? DateTime的時區信息是否會在客戶端和服務器之間存活,以至於轉換爲UTC將正確導致UTC時間,還是需要在客戶端進行UTC轉換?

回答

5

您應該在您的代碼中使用DateTime.UtcNow,那麼在需要轉換的位置是沒有問題的。

由於Silverlight在客戶端的機器上使用.NET運行時運行,因此我認爲它會在用戶的本地時區中獲取時間。

可以使用TimeZoneInfo類Silverlight來獲得用戶的時區信息。該DateTime類本身不存儲特定的時區信息(時間正好是通用或本地時間),所以你」 d需要使用它來確定用戶的時區。

+0

謝謝 - 我有一陣困惑 - 現在對我來說都很明顯。在另一點上,有一種情況我根本不想轉換,但是我從某個地方得到它,有關如何防止它的任何想法? – 2009-06-05 14:21:18