Большинство проблем при разборе из-за неправильных строк формата - и это здесь.Посмотрите на строку формата:
mm/dd/yyyy hh:mm:ss tt
Это означает:
- 2-значный минут
- 2-значный деньмесяц
- 4-значный год
- 2-значный полдня (1-12)
- 2-значный минуты
- 2-значные секунды
- am / pm обозначение
Здесь есть два подозрительных аспекта:
- Вы указываете минуты дважды.Вы действительно имели в виду месяц года для первой части, что означает, что вы хотите
MM
- Вы указываете двузначный час полдня, которыйредко используемый.Например, я ожидаю увидеть «8:00:00 AM», а не «08:00:00 AM».
Так что я подозреваю, что вам нужна строка формата:
MM/dd/yyyy h:mm:ss tt
Полный код:
DateTime date1 = DateTime.ParseExact(
dateString, "MM/dd/yyyy h:mm:ss tt", CultureInfo.InvariantCulture);