C# 日期时间显示无效时间

C# 日期时间显示无效时间,c#,datetime,C#,Datetime,我用的是C 当我试图通过以下行获取当前时间时: var time = TimeSpan.FromMilliseconds((dtNow - new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc).ToLocalTime()).TotalMilliseconds); 并与 var date = new DateTime(time.Ticks); 我得到了无效年份,我得到的年份是0048而不是2017年 为什么会发生这种情况?我如何修复它,如何知道

我用的是C

当我试图通过以下行获取当前时间时:

var time = TimeSpan.FromMilliseconds((dtNow - new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc).ToLocalTime()).TotalMilliseconds);
并与

var date = new DateTime(time.Ticks);
我得到了无效年份,我得到的年份是0048而不是2017年

为什么会发生这种情况?我如何修复它,如何知道时间是否包含有效日期,以及是否要修复它?加上年份

谢谢

根据,ticks参数不是1970年的,而是第一年的:

滴答声 类型:System.Int64 从公历0001年1月1日00:00:00.000起以100纳秒间隔表示的日期和时间


我的重点是

如果您试图获取当前日期和时间,为什么不:var time=DateTime.Now?为什么要精心计算呢?哦,好吧,那我该怎么解决呢?就为了再加上1969年?