计算两个日期时间实体之间的差异

时间:2016-08-23 04:38:24

标签: c# sql-server entity-framework asp.net-mvc-5

enter image description here我的模特是

public class abc
{
   public DateTime StartDate{get;set;}
   public DateTime EndDate{get;set;}
}

我已截取了数据库列的截图。我想在我的Web应用程序中显示StartDate和EndDate之间的小时数差异。我怎样才能做到这一点。我正在使用实体框架。

4 个答案:

答案 0 :(得分:3)

您可以通过

计算小时差异
TimeSpan diff = EndDate - StartDate;
double hours = diff.TotalHours;

如果StartDateEndDatenullable,那么

TimeSpan? diff = EndDate.Value - StartDate.Value;
double hours = diff.TotalHours;

答案 1 :(得分:1)

将差异计算为:

var diffHours = (endDateTime- startDateTime).TotalHours

答案 2 :(得分:0)

另一个选项可以是添加NotMapped属性来计算它。您的模型应如下所示:

public class abc
{
   public DateTime StartDate { get; set; }
   public DateTime EndDate { get; set; }

   [NotMapped]
   public double HourDifference
   {
        get 
        { 
            return (EndDate - StartDate).TotalHours;
        }
   }
}

从数据库获取数据后,您可以使用HourDifference显示差异。

答案 3 :(得分:0)

试试这个..它会给你不同的日子..

TimeSpan tSpan = (abc.EndDate.Value).Subtract(abc.StartDate.Value);
var NoOfDays = tSpan.Days;