DateTime.Parse使用Optimse Code编译器选项抛出异常

时间:2015-09-04 09:34:44

标签: c# asp.net .net-3.5 iis-7.5

在我的项目中,我有一行

DateTime alarmDateTime = DateTime.Parse(AlarmTimeStamp.Text);

AlarmTimeStamp.Text例如是"04/09/2015 10:23"(计算机的区域设置是英国英国)

抛出FormatException,但仅在启用Optimize Code编译器设置时,即Release版本。如果我关闭它,它会按预期工作。

我不知道从哪里开始调试,因为调试器无法正常使用优化代码。

如果相关,则来自ASP.Net Web窗体应用程序,Windows Server 2008 R2,IIS 7.5中托管的.Net 3.5。

编辑:
我做了一些测试,发现这只发生在我的一台服务器上。我配置了2台服务器,一个开发和测试。此问题仅发生在我的开发服务器上。但他们之间没有区别。它们都是用同一图像构建的。

1 个答案:

答案 0 :(得分:0)

像这样更改您的代码..

    string timeString = AlarmTimeStamp.Text;
    IFormatProvider culture = new CultureInfo("en-GB", true);
    DateTime alarmDateTime = DateTime.ParseExact(timeString, "dd/MM/yyyy HH:mm", culture);