C#的日期时间晚一个小时?

时间:2013-07-10 01:41:20

标签: c# .net datetime

我的客户端应用程序需要从服务器“在某个值与1970之间的秒数”。

我正在使用以下代码对此进行测试:

var span = (DateTime.Now - new DateTime(1970, 1, 1, 0, 0, 0, 0).ToLocalTime()).TotalSeconds;

return span;

但是如果我从这个unix时间转换结果,我得到的东西比现在晚一个小时,所以我的客户端应用程序没有按预期运行。

发生了什么事?

3 个答案:

答案 0 :(得分:6)

尝试使用UTC时间:

(DateTime.UtcNow - new DateTime(1970, 1, 1, 0, 0, 0, 0, DateTimeKind.Utc).TotalSeconds;

答案 1 :(得分:2)

这是你要找的吗?

var span = (DateTime.UtcNow - new DateTime(1970, 1, 1)).TotalSeconds;

return span;

答案 2 :(得分:-1)

尝试:

TimeSpan span = DateTime.Now.Subtract(new DateTime(1970,1,1,0,0,0));

然后使用span.TotalSeconds