我们有一个应用程序解析以下格式的日期/时间值:
2009-10-10 09:19:12.124
2009-10-10 12:13:14.852
2009-10-10 13:00:00
2009-10-10 15:23:32.022
一个特定的服务器突然(今天)开始无法解析任何时间 13:00:00 或更晚。这个特定的客户端有五台服务器,只有一台有问题。我们有几十个其他客户端,总共有数百台服务器,没有问题。
System.FormatException: String was not recognized as a valid DateTime.
at System.DateTimeParse.Parse(String s, DateTimeFormatInfo dtfi, DateTimeStyles styles)
at System.DateTime.Parse(String s, IFormatProvider provider)
at System.Convert.ToDateTime(String value, IFormatProvider provider)
at System.String.System.IConvertible.ToDateTime(IFormatProvider provider)
at System.Convert.ToDateTime(Object value)
我使用 DateTime.Parse(s, CultureInfo.CurrentCulture) 与 DateTime.Parse(s, CultureInfo.InvariantCulture) 进行了测试,问题只出现在 CurrentCulture 上。但是,CurrentCulture 就像所有其他服务器一样是“en-US”,我在区域或语言设置中没有什么不同。
有没有人见过这个?与我可以调查的内容相关的建议?
编辑:谢谢你到目前为止的答案。但是,我正在寻找有关要研究什么配置的建议,这可能会导致它突然改变行为并停止工作,因为它已经工作了多年并在数百个其他服务器上工作。我已经为下一个版本更改了它,但我正在寻找配置更改以在当前安装的过渡期间修复此问题。