6

我有这个任务来填充这个字段:

x_fp_timestamp 是生成表单时创建的时间戳。它等于 UTC(协调世界时)自 1970 年 1 月 1 日以来的秒数。

所以我在 C# 中所做的是

 long ts =  DateTime.Now.Ticks / TimeSpan.TicksPerSecond;

但在那种情况下,我收到了这个错误:

  • x_fp_timestamp : x_fp_timestamp 无效。不在当前时间的 15 分钟内:2013 年 1 月 10 日星期四 21:30:25 GMT。预计 1357853425 加/减 900,但收到 63493442997。

所以我的问题是如何以秒为单位生成当前时间戳?

4

2 回答 2

17

DateTime.Now.Ticks 不是从 1970 年开始的;尝试这样的事情:

 (DateTime.Now.ToUniversalTime() - new DateTime (1970, 1, 1)).TotalSeconds
于 2013-01-10T21:59:05.243 回答
1

我发现DateTimeOffset.ToUnixTimeSeconds最适合我的具体情况(Unity 3D [.NET 标准 2.1])

    long timeNow = DateTimeOffset.Now.ToUnixTimeSeconds();
    string timeStamp = timeNow.ToString();
于 2022-01-17T17:21:47.007 回答