DateTime.TryParseExact ()отклоняет допустимые форматы

Я анализирую значение 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"))для этого параметра.

Что мне не хватает?

60
задан Amnesh Goel 19 September 2015 в 14:53
поделиться