比较两个日期的日子

时间:2014-11-01 19:33:35

标签: c# asp.net sql-server

我使用的是ASP.NET,C#和SQL Server。在数据库中,日期为:2014-10-28。只是年,月,日,没有时间部分。

我有这段代码:

  DateTime data1 = new DateTime();
  DateTime data2 = DateTime.Now;

  data1 = reader.GetDateTime(3);

  double total= (data2 - data1).TotalDays;
  Response.Write(total.ToString());

唯一的问题是输出。这个输出是" 4,81351624131366"。因为这可能是小时数的差异。可以将data2设置为仅给出Y,M和D?

或将总数转换为天数?

1 个答案:

答案 0 :(得分:0)

属性TotalDays也会返回天数的小数部分。由于您比较的日期是4天前的午夜,您将获得4天的全天和额外的4/5(因为当您执行此操作时,它不是正好午夜)。

Jon说的话(使用DateTime.Today代替DateTime.Now来获取午夜时间的日期部分),或使用Days属性,这将返回舍入的4并删掉小部分。