我能否强制ASP.Net网站以特定时区显示时间?

3
我有一个客户要求所有时间都以太平洋时区显示,不受客户端设置的影响。我希望避免每次都调用函数进行时间显示的情况,而是有一个单一的点可以进行切换。
我考虑使用自定义文化可能会有所帮助,但在我开始尝试之前,我想先问一下,以免走弯路(或错过一些微不足道的易错点)。
3个回答

4
你可以使用 TimeZone.GetUTCOffset()DateTime.UtcNow() 方法。基本上获取 UTC 时间并根据你感兴趣的时区计算偏移量。

这种方法需要应用于每个显示DateTime字段的字段上,还是我可以在主页面上使用它并将其级联到各个字段上?我可能要求太多了,但我希望整个站点都有一个DRY解决方案。 - KevDog
我想知道Jon Skeet的Noda时间库是否能够在完成后处理这种情况。 - KevDog


0
如果您将时间存储在UTC中,则可以轻松转换为任何您想要的格式。Michael Brumm有一些相当古老的代码,可能会帮助您使用自定义时区。硬编码偏移量会在DST启动时引起问题。
注意:我没有在Michael的网站上使用过此代码。

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


我肯定会尽量避免硬编码的情况,所以感谢您的提醒! - KevDog

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接