C# 减去两个日期时间变量
如何获取两个datetime变量之间的总小时数C# 减去两个日期时间变量,c#,asp.net,datetime,C#,Asp.net,Datetime,如何获取两个datetime变量之间的总小时数 date1=1/1/2011 12:00:00 date2=1/3/2011 13:00:00 datetime date1 ; datetime date2; int hours=(date1.date2).hours; 输出是1,但我想要两个日期之间的总小时差,即49小时 谢谢使用代替。请注意,结果是一个双精度-您只需将其转换为int即可获得完整的小时数。如果结果是否定的,请检查您想要的行为 从文档中持续数小时: 属性值:当前时间跨度结
date1=1/1/2011 12:00:00
date2=1/3/2011 13:00:00
datetime date1 ;
datetime date2;
int hours=(date1.date2).hours;
输出是1,但我想要两个日期之间的总小时差,即49小时
谢谢使用代替。请注意,结果是一个双精度-您只需将其转换为int即可获得完整的小时数。如果结果是否定的,请检查您想要的行为
从文档中持续数小时:
属性值:当前时间跨度结构的小时组成部分。返回值的范围为-23到23
您不需要小时部分-您需要整个时间跨度,以小时表示。谢谢Jon。在数据库中,datetime类型值为AM PM格式,如何将其转换为24小时格式,否则我将在不转换的情况下获得正确的结果it@saurabh:这是一个完全不同的问题-一个正确获取数据的问题。您根本不应该将其作为字符串获取,但我们看不到用于访问它的任何代码。我建议你开始一个新的问题,如果你不能解决如何让你的数据库提供者给你一个日期时间而不是字符串。
int hours = (int) (date2 - date1).TotalHours;
DateTime date1 = new DateTime(2011, 1, 1, 12, 0, 0);
DateTime date2 = new DateTime(2011, 1, 3, 13, 0, 0);
TimeSpan ts = date2 - date1;
double hours = ts.TotalHours;