2010-05-10 97 views
1

我正在開發使用SQL Report Builder 2.0的報表,在此我將時區偏移值作爲參數(-04:00)傳遞。使用「TimeZoneInfo」我可以從系統獲得所有時區。但我正在用偏移值檢查時區,所以從可用列表中我只能得到第一個時區對象。Report Builder 2.0:如何獲取正確的時區信息

是否有任何其他方式從系統獲取特定的TimezoneInfo。

感謝, 威拉

回答

0

這將返回時差。 System.TimeZone.CurrentTimeZone.GetUtcOffset(now())

這將返回本地時間。 System.TimeZone.CurrentTimeZone.ToLocalTime(NOW())

這將顯示時區名稱 System.TimeZone.CurrentTimeZone.StandardName

當運行在服務器上的報告,它會顯示服務器的時區。處理這個問題的一個快速方法是隻顯示時區名稱&。

如果您確實必須向每個用戶顯示其當地時間,則應該將UTC偏移量存儲在數據庫中的某個地理位置表(即辦公室或位置)中。您也可以將其與用戶名稱(用戶ID是SSRS中提供的全局變量)進行存儲,但這將更具維護性。