2012-09-05 159 views
0

我們有一個應用程序託管在英國的服務器上,可供全球客戶訪問。我們的客戶爲他們公司的訂單隨時間增加。他們在設置訂單時需要做的事情之一是選擇一個訂單截止日期,該訂單將自動關閉並提交。使用時區偏移量計算日期時間值偏移量

我們希望在客戶選擇的日期午夜(當地時間基於時區)關閉任何訂單,但由於我們的服務器位於英國,因此在考慮不同的時區時會出現問題。我們的服務器需要知道在哪個英國時間結束訂單,以便客戶在午夜時間看到他們的訂單。

我們要求客戶輸入他們的時區作爲其賬戶設置的一部分,因此我們將它作爲.net時區信息存儲在數據庫中。我們還將存儲2012年9月30日的targetCloseDate(爲了顯示給用戶)。但是,我們需要將目標日期轉換爲我們的服務器用作訂單截止日期的英國時間。

我們該如何做這種轉換?

乾杯 永

+0

您是否正在尋找應用['CultureInfo'(http://msdn.microsoft.com/en-us/library/system.globalization.cultureinfo.aspx)或使用GMT差圖出來? –

+0

在查看更多timezoneinfo類後,我自己回答了這個問題。 您可以使用: TimeZoneInfo.ConvertTimeBySystemTimeZoneId(orderCloseDate,customerTimeZone,TimeZoneInfo.Local.Id) 該轉換日期時間值 - orderCloseDate使用源時區和目的地時區...完美! 翼 – wingyip

+0

很高興聽到它,但是這更適合作爲回答帖子,而不是對問題的評論。請創建答案,然後(如果可能)標記自己的答案爲接受(使未來的訪問者有一個參考,並避免自己審查一個未答覆的問題)。 –

回答

0

有更多的尋找到的TimeZoneInfo類後回答這個自己。您可以使用:

TimeZoneInfo.ConvertTimeBySystemTimeZoneId(orderCloseDate, customerTimeZone, TimeZoneInfo.Local.Id) 

這將使用源時區和目標時區轉換日期時間值 - orderCloseDate ...完美!