应用程序中的全局时区变更

时间:2011-09-30 07:14:00

标签: c# datetime timezone

我有一个最近发布到Web服务器的MVC3应用程序。此服务器的时区与我的时区不同,这意味着此服务器上的DateTime.Now与我自己的不同。这也意味着网站上显示的所有时间对我来说都是错误的。

此应用程序的用户群都位于同一时区,因此我正在寻找一种覆盖服务器时区的方法,而是使用我自己的时区。

我真的不想根据差异添加或减少小时数,因为在夏令时发生时会混淆。

1 个答案:

答案 0 :(得分:2)

您可以使用类似的内容将当前的UTC日期/时间转换为当地时间:

TimeZoneInfo tzi = TimeZoneInfo.FindSystemTimeZoneById("GMT Standard Time");
DateTime localTime = TimeZoneInfo.ConvertTimeFromUtc(DateTime.UtcNow, tzi);

只需将传递给TimeZoneInfo.FindSystemTimeZoneByIdId更改为您当地的时区标识符。