【问题标题】:DateTime.TryParse failing in Azure Web AppDateTime.TryParse 在 Azure Web 应用程序中失败
【发布时间】:2016-07-22 05:50:05
【问题描述】:

我的开发机器的文化是 en-NZ,我的时区设置为新西兰时间 (UTC+12:00)。位于美国西部的服务器上的 DateTime.TryParse 失败。

  1. 如何检查和更改服务器上我的网络应用程序的文化和时间设置?

  2. 我可以在服务器上以交互方式运行 Powershell 或 C# 代码并查看输出,只是为了测试一些东西,比如说

    Console.WriteLine(CultureInfo.CurrentCulture.ToString());
    

如果您认为我的处理方式有误,欢迎提出任何其他想法。

【问题讨论】:

  • 您是否使用 culter 参数测试了 datetime.tryparse?像这样 DateTime.TryParse(dateString,culture, styles,out dateResult)

标签: c# powershell datetime azure culture


【解决方案1】:

我只是用 Kudu 来回答这个问题。 Kudu 太棒了。

我只是认为“Kudu 是 Azure 网站中 git 部署背后的引擎。它也可以在 Azure 之外运行。”

但是转到https://[mysite].scm.azurewebsites.net/。这实际上是 Kudu 的 Web 界面,可以告诉您有关环境的所有信息。您甚至可以运行 powershell 和 cmd。看看吧。

通过将其放入 web.config 来解决问题:

<configuration>
    <system.web>
        <globalization culture="en-NZ" uiCulture="en-NZ"  />
    </system.web>
</configuration>

顺便说一句,使用 powershell,服务器上的文化是 en-US(美国西部数据中心)。时间是UTC。我不需要更改时间,但这里是如何做到这一点:

https://blogs.msdn.microsoft.com/tomholl/2015/04/06/changing-the-server-time-zone-on-azure-web-apps/

基本上,“您需要做的就是添加一个名为 WEBSITE_TIME_ZONE 的应用程序设置(通过门户或管理 API),并将其设置为在 HKLM\Software\Microsoft\ 下的 Windows 注册表中定义的时区名称Windows Nt\CurrentVersion\Time Zones\(例如,“澳大利亚东部标准时间”)。”

【讨论】:

  • 答案是什么?
  • @JeroenHeier 我现在已经完全回答了。
猜你喜欢
  • 2019-03-17
  • 2021-12-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-02-02
  • 1970-01-01
相关资源
最近更新 更多