宿主服务器上的DateTime格式



我最近切换了我的托管提供商,由于服务器现在所在的时区,我的代码已经停止工作。

托管服务器在太平洋时间报告,然而,我的代码需要与GMT一起工作,因为我的网站是针对英国市场的。因此,我所有的显示和搜索都需要采用dd/MM/yyyy 格式

我该如何解释差额?

例如,当我做DateTime时。解析("03/11/2008")它失败了,因为我认为"解析"是针对服务器设置的。在我的代码中,我还得到了"字符串未被识别为有效的DateTime."。

在web.config文件中,在<system.web>节点下添加<globalization>元素:

<system.web>
  <globalization culture="en-gb"/>
  <!-- ... -->
</system.web>

尝试

DateTime.Parse("28/11/2008", new CultureInfo("en-GB"))

查看DateTime的过载。在MSDN上进行分析。

此外,注意不要混淆时区(太平洋,格林尼治标准时间)和文化。文化是你的实际问题。

为了避免处理这些非常无聊的问题,我建议您始终按照标准且唯一的SQL/ISO日期格式(YYYY-MM-DD)解析数据。然后,无论主服务器或查询客户端上的日期参数是什么,您的查询都将在国际范围内工作(其中本地日期设置可能与主服务器设置不同)!

我遇到了这个问题,上面的答案没有解决。所以也许这可以帮助人们不要把头发都扯下来。

我在新服务器上的约会文本框中找到了NaN NaN NaN。发现新服务器具有internet explorer选项"以兼容模式显示intranet站点"。这里的解决方案是放置

<meta http-equiv="X-UA-Compatible" content="IE=9; IE=8; IE=7; IE=EDGE" / >

在aspx的头部强制关闭压缩模式。

这解决了很多奇怪的事情。希望这能帮助到别人!

相关内容

  • 没有找到相关文章

最新更新