我將所有DateTime字段存儲爲UTC時間。當用戶請求網頁時,我想採用他首選的本地時區(而不是服務器本地時區),並自動將所有Web表單中的所有DateTime字段顯示爲本地日期。將UTC日期時間全局轉換爲用戶指定的本地日期時間
當然,我可以在每個窗體的每個DateTime.ToString()調用上應用轉換,或者實現一些輔助工具,但這是一個耗時的任務,還有一些第三方組件很難配置自定義DateTime顯示模板。
從本質上講,我想提出DateTime類的行爲如下:
from this moment on for this web request,
whenever some code calls DateTime.ToString(), convert it to the local time
using the timezone offset given at the very beginning of the web request,
but if possible, please keep .NET core library DateTime.ToString() calls intact
(I don't want to mess up event logging timestamps etc.)
有沒有辦法做到這一點?
順便說一句,我使用ASP.NET MVC 4,如果它很重要。
很好的答案!你說這也可以用JavaScript中的內置Date對象完成。你能否更新你的答案以表明如何做到這一點? – Scott 2013-12-31 17:05:17
@Scott - 已更新。謝謝。 – 2013-12-31 18:04:20