为什么我无法将此字符串解析为 DateTimeOffset 并将我的系统时钟设置为香港时间?



如果您更改了系统时钟

来自:例如香港时间或中国标准时间(UTC 8(

to: EST Eastern Standard Time(UTC -5(

然后以下代码可行。

dateTimeOffset不喜欢" 0001-01-01T00:00:00",如果不设置时钟?

string token = "0001-01-01T00:00:00";
if (!DateTimeOffset.TryParse(token, out var offsetDate))
{
   Console.WriteLine(“Why?”);
}

为什么...?

如果您对EST时间的时间,则该值代表大于1/1/1001 12:00:00 AM 00:00的UTC时间,这是DateTimeOffset的最小值。所以你还好。

如果您在香港时间,该值将小于DateTimeOffset.MinValue。该值不能表示为DateTimeOffset,因此TryParse失败。

最新更新