Я пытаюсь проанализировать метку даты и времени из внешней системы следующим образом:
DateTime expiration; DateTime.TryParse("2011-04-28T14:00:00", out expiration);
К сожалению, это не распознано. Как я могу успешно разобрать это?
sl3dg3
Укажите точный формат в DateTime.TryParseExact:
DateTime.TryParseExact
DateTime expiration; string text = "2011-04-28T14:00:00"; bool success = DateTime.TryParseExact(text, "yyyy-MM-ddTHH:mm:ss", CultureInfo.InvariantCulture, DateTimeStyles.None, out expiration);
Попробуйте это
DateTime expiration; DateTime.TryParse("2011-04-28 14:00:00", out expiration);
Без использования "T".
вместо этого можно использовать DateTime.TryParseExact.
Как создать .NET DateTime из формата ISO 8601
Пользователь DateTime.TryParseExact работает следующим образом:
DateTime dateValue; if (DateTime.TryParseExact(dateString, "yyyy-MM-ddTHH:mm:ss", new CultureInfo("en-US"), DateTimeStyles.None, out dateValue)) { // Do Something .. }
Читать о DateTime .
Вам необходимо добавить "00000Z" к строковому аргументу.
DateTime.TryParse("2011-04-28T14:00:0000000Z", out expiration);