C#DateTime - RFC 3339格式

时间:2011-02-16 14:42:31

标签: c# .net datetime rfc3339

我正在尝试生成符合RFC 3339的日期字符串(即'2008-03-19T00:00:00.0000000-04: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); 

但结果相同。


请参阅此现有参考资料:How do I parse and convert DateTime's to the RFC 3339 date-time format?

1 个答案:

答案 0 :(得分:7)

您正在将数据转换为UTC,因此其与UTC的时区偏移为0:00。 RFC定义了UTC日期的便捷表示法,后缀为Z。所以这看起来像是一个有效的数据字符串。