C# 如何在C中减去2个UTC日期#
在我的网站中,我使用日期数据类型将用户访问C# 如何在C中减去2个UTC日期#,c#,datetime,utc,C#,Datetime,Utc,在我的网站中,我使用日期数据类型将用户访问日期时间信息存储在sql server中。 为此,我在C中使用了UtcNow 现在,如果同一用户访问我的网站,我想得到小时差,那么我如何减去2个UTC日期。我使用以下方法获得小时差,但它给出了错误的小时差 TimeSpan timeDiff = System.DateTime.UtcNow.Subtract((DateTime)_Last_View.visit_date); 尝试使用生成的时间跨度上的总小时数获取小时数,如: TimeSpan inte
日期时间
信息存储在sql server中。
为此,我在C
中使用了UtcNow
现在,如果同一用户访问我的网站,我想得到小时差,那么我如何减去2个UTC日期。我使用以下方法获得小时差,但它给出了错误的小时差
TimeSpan timeDiff = System.DateTime.UtcNow.Subtract((DateTime)_Last_View.visit_date);
尝试使用生成的时间跨度上的总小时数获取小时数,如:
TimeSpan interval = date2.Subtract(date1);
double Hours = interval.TotalHours;
检查此项尝试使用:
谢谢
它起作用了
TimeSpan timeDiff = System.DateTime.UtcNow.Subtract((DateTime)_Last_View.visit_date);
if (timeDiff.TotalHours > 24)
{
}
我使用的是
timeDiff.Hours
而不是timeDiff.TotalHours
您的代码没有问题,但是访问日期的值可能与您期望的值不同(假设使用了timeDiff.TotalHours)。+1。这是最可能的原因-TimeSpan.Hours与TimeSpan.TotalHours(假设数据正确)。谢谢…我使用的是Hours属性而不是TotalHours。
DateTime dt1 = DateTime.UtcNow;
DateTime dt2 = (DateTime)_Last_View;
TimeSpan ts = dt1.Subtract(dt2);
int seconds = ts.Seconds;
int minutes = ts.Minutes;
double hours = ts.TotalHours;
int days = ts.Days;
int days = ts.TotalDays;
int years = (int) (ts.Days / 365.25); // leap years included
double timeDiffTicks = System.DateTime.UtcNow.Ticks - visit_date.Ticks;
double hours = (((timeDiffTicks / 10000)/1000) / 60)/60;
TimeSpan timeDiff = System.DateTime.UtcNow.Subtract((DateTime)_Last_View.visit_date);
if (timeDiff.TotalHours > 24)
{
}