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

C# ASP.NET MVC4部署在Azure本地化上,c#,datetime,asp.net-mvc-4,localization,azure-web-app-service,C#,Datetime,Asp.net Mvc 4,Localization,Azure Web App Service,我已经在ASP.NET MVC4中创建了一个应用程序。在我的Visual Studio 2012 IIS服务器上一切正常。问题是当我在Azure上发布它时,然后当我调用DateTime时。现在我从其他时区获得时间,并且当我想显示日期时:DateTime.Now.ToString(“dd-MMMM-yyyy”)月名是英文的。如何在整个应用程序中创建特定的区域性(即pl) 我在web.config中尝试了,但没有效果 Azure以UTC运行所有服务器,这是适当的 永远不要在服务器应用程序中调用Dat

我已经在ASP.NET MVC4中创建了一个应用程序。在我的Visual Studio 2012 IIS服务器上一切正常。问题是当我在Azure上发布它时,然后当我调用
DateTime时。现在
我从其他时区获得时间,并且当我想显示日期时:
DateTime.Now.ToString(“dd-MMMM-yyyy”)
月名是英文的。如何在整个应用程序中创建特定的区域性(即pl)

我在web.config中尝试了
,但没有效果

  • Azure以UTC运行所有服务器,这是适当的
  • 永远不要在服务器应用程序中调用
    DateTime.Now
    。这会将服务器的时区强加于结果中。这没有什么好的理由——您应该能够在任何地方部署应用程序
  • 区域性只会影响格式,而不会影响时区。并且只有
    区域性设置影响
    DateTime.ToString()的输出。
    ui文化
    并不重要(在这方面)
  • 它不会从web.config获取您的值,因为它区分大小写,并且您使用的大小写不正确。你需要:

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

感谢您的精彩回答!成功了。已更改为Datetime.UtcNow