2010-04-06 54 views
3

我有一个客户端请求,无论客户端设置如何,所有时间都将显示在太平洋时区中。我想避免一个场景,我必须在每次显示时调用一个函数,而只需要一个点就可以进行切换。我可以强制ASP.Net网站在特定时区显示时间吗?

我在想一个自定义文化可能会做的伎俩,但我想问之前,我开始了一个潜在的盲目的胡同(或错过一些简单的事情)。

回答

4

你可以使用TimeZone.GetUTCOffset()DateTime.UtcNow()

基本上得到UTC时间和偏移根据您感兴趣的时区。

善良,

+0

请问这种方法需要在哪里进行显示日期时间字段或东西我可以用一个母版页,并将它向下级联到各个领域各个领域的应用?我可能会问太多,但我希望为整个网站提供DRY解决方案。 – KevDog 2010-04-06 14:19:43

+0

我想知道Jon Skeet的Noda时间库会在完成时处理这种情况。 – KevDog 2010-04-06 14:27:33

0

如果您使用UTC存储时间,则可以轻松转换为任何您想要的值。迈克尔布鲁姆有一些相当古老的代码,可以帮助你与自定义TimeZone。硬编码偏移量会在DST启动时产生错误。

注意:我没有在Michael的网站上使用过这个代码。

http://www.michaelbrumm.com/simpletimezone.html

+0

我一定要避免硬编码的情况,所以谢谢提醒! – KevDog 2010-04-06 14:26:23

相关问题