我可能做错了-但无法弄清楚原因。我的数据库中有一个DateTime字段,保持UTC时间
我的服务器在美国,浏览器在欧洲。
PageLoad代码如下:
DateTime t = DateTime.SpecifyKind((DateTime)rdr["startTime"], DateTimeKind.Utc); label1.Text = t.ToLocalTime().ToString();
我显示的时间是美国当地时间,而不是欧洲。如何显示浏览器的本地时间?
谢谢!
一种技术是使用客户端浏览器上的javascript检测客户端时区偏移量(以分钟为单位):
alert((new Date()).getTimezoneOffset();
然后可以将其发送回服务器并存储在会话或cookie中,并用于抵消向其显示的UTC日期。替代地,另一种技术是具有用户配置文件,他们可以在其中指定时区。