C # datetime - формат RFC 3339
Вопрос
Я пытаюсь сгенерировать RFC 3339, совместимые дату строки (т. Е. 2008-03-19T00: 00: 00.0000000-04: 00:00) Однако я, кажется, имея проблему с недействительным.Я использую следующее:
private string GetDate(DateTime DateTime)
{
DateTime UtcDateTime = TimeZoneInfo.ConvertTimeToUtc(DateTime);
return XmlConvert.ToString(UtcDateTime, XmlDateTimeSerializationMode.Utc);
}
.
Но это возвращает меня со значением, таковым, как "1977-02-03T05: 00: 00z"
Я также пытался использовать определенный формат, такой как
.
utcDateTime.ToString("yyyy-MM-dd'T'HH:mm:ss.fffK", DateTimeFormatInfo.InvariantInfo);
Но с одинаковыми результатами.
Смотрите эту существующую ссылку: Как я могу разбирать и преобразовать и преобразовать DateTime на RFC 3339 Date-Time Format?
Решение
You are converting your data to UTC, so its timezone offset to UTC is 0:00. The RFC defines a convenient notation for UTC dates, the suffix Z
. So this looks like a valid data-string to me.