Currently when I use {Timestamp}
in an outputTemplate it appears to have been generated by DateTime.Now
and therefore being of DateTimeKind.Local
flavor since, when I give it an "o" specifier it produces output similar to 2016-02-12T09:51:34.4477761-08:00
What I'd like to get instead for the above example is 2016-02-12T17:51:34.4477761Z
, which would have been produced had the Timestamp
been of DateTimeKind.Utc
.
Update
It looks like it is actually DateTimeOffset that gets instantiated there so no DateTimeKind
is in effect, rather it looks like underlying DateTime
is always of DateTimeKind.Unspecified
. MSDN notes that there is some difference in behavior when formatting DateTimeOffset
vs DateTime
, specifically:
"u" -- Converts the DateTimeOffset value to UTC and outputs it using the format yyyy-MM-dd HH:mm:ssZ.
The conversion is exactly what I want but I also need fractions.
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…