我在解析DateTime值ASP.NET WebForms
页和日期字符串不断得到由拒绝DateTime.TryParseExact()
方法,即使它清楚地匹配所提供的格式字符串之一。
这似乎是我的机器上不能在家里,但在生产服务器上工作,所以参与我想到的本地日期设置,但即使我提供一个出现此错误IFormatProvider (CultureInfo)
对象作为参数
下面的代码:
DateTime startDate;
string[] formats = { "dd/MM/yyyy", "dd/M/yyyy", "d/M/yyyy", "d/MM/yyyy",
"dd/MM/yy", "dd/M/yy", "d/M/yy", "d/MM/yy"};
var errStart = row.FindControl("errStartDate"); //my date format error message
if (!DateTime.TryParseExact(txtStartDate.Text, formats, null, DateTimeStyles.None, out startDate))
{
errStart.Visible = true; //we get here even with a string like "20/08/2012"
return false;
}
else
{
errStart.Visible = false;
}
注意:我给一个null FormatProvider
在上面, 但是当我提供了一个同样的问题出现CultureInfo
对象(CultureInfo provider = new CultureInfo("en-US"))
这个参数。
我在想什么?