.NET 日期时间从字符串转换为日期时间时的毫秒精度问题

sri*_*idg 5 .net c# precision datetime

你好。我正在尝试以字符串格式转换传入我们系统的传入日期时间值。似乎当毫秒精度高于7时,.NET中的日期时间解析似乎不喜欢该值并且无法转换/解析该值。我有点不明白该怎么做?我目前唯一的想法是毫秒大小有限制,而且精度是不可能的?但我想确认情况确实如此,而不是假设。例子:

string candidateDateTimeString = "2017-12-08T15:14:38.123456789Z";
if (!success)
        {
            success = DateTime.TryParseExact(trayportDateTimeString, "yyyy-
MM-dd'T'HH:mm:ss.fffffffff'Z'",
                CultureInfo.InvariantCulture, dateTimeStyles, out dateTime);
        }
Run Code Online (Sandbox Code Playgroud)

如果我将 'f' 值减少到 7,那么日期时间解析工作正常。有限制吗?还是我做错了什么?

And*_*nov 5

根据自定义日期和时间格式字符串文档,7 是第二个分数的最大支持位数。