ASP.NET MVC4部署在Azure本地化上

时间:2013-06-27 18:04:36

标签: c# datetime asp.net-mvc-4 localization azure-web-sites

我在ASP.NET MVC4中创建了一个应用程序。我的Visual Studio 2012 IIS服务器上的一切正常。问题是当我在Azure上发布它时,然后当我调用DateTime.Now时,我从其他时区获得时间而不是我的时间,并且当我想显示日期时:DateTime.Now.ToString("dd MMMM yyyy")月份名称是英文。我怎样才能在整个应用中使用特定的文化(即pl-PL)?

我在web.config中尝试<Globalization Culture="pl-PL" UICulture="pl-PL" />但没有效果

1 个答案:

答案 0 :(得分:3)

  • Azure以UTC格式运行所有服务器,这是合适的。
  • 您应该从不在服务器应用程序中调用DateTime.Now。这会将服务器的时区强加到结果中。没有充分的理由 - 您应该能够在任何地方部署您的应用程序。 Read more here
  • 文化只会影响格式,而不会影响时区。只有Culture设置会影响DateTime.ToString()的输出。 UICulture无关紧要(就此而言)。
  • 它没有从web.config中获取您的值,因为它区分大小写并且您使用的是不正确的大小写。 Reference here。你需要:

    <globalization culture="pl-PL" uiCulture="pl-PL" />