东八区的本地时间获取时间戳,如果转换成UTC时间,是有八个小时时差的
所以如果直接用new DateTime(1970, 1, 1, 0, 0, 0) 去获取1970年的时间 来用你的时间去减的话,获取到的时间戳会有误差
除非手动去加上8小时的秒数,或者这样写
new DateTime(1970, 1, 1, 0, 0, 0).ToLocalTime();
或者实时下面这种方法
public static string GetTimeStamp(DateTime dt)
{
double intResult = 0;
DateTime startTime = TimeZone.CurrentTimeZone.ToLocalTime(new DateTime(1970, 1, 1));
intResult = (dt - startTime).TotalSeconds;
return Math.Round(intResult, 0).ToString();
}