计算 DiffDays 函数 DateTime order - 较大的 DateTime 排在第一位还是第二位
Calculate DiffDays function DateTime order - Does the larger DateTime come first or second
我正在编写一个 MVC 5 互联网应用程序,我想编写一个函数,它既可以与 SQL 语句一起使用,也可以与列表一起使用。
这是我的代码:
public static class TestableDbFunctions
{
[System.Data.Entity.DbFunction("Edm", "DiffDays")]
public static double? DiffDays(DateTime? dateValue1, DateTime? dateValue2)
{
if (!dateValue1.HasValue || !dateValue2.HasValue)
return null;
return (double)((dateValue2.Value - dateValue1.Value).TotalDays);
}
}
如您所见,代码计算了两个 DateTimes
.
之间的天数差异
我的问题是:代码应该是(dateValue2.Value - dateValue1.Value).TotalDays
还是(dateValue1.Value - dateValue2.Value).TotalDays
?
提前致谢。
由于您试图遵守 SQL,最接近的类似物是 DateDiff。第一个参数是 start date
,第二个参数是 end date
。代码应该是
return (endDate - startDate).TotalDays;
我正在编写一个 MVC 5 互联网应用程序,我想编写一个函数,它既可以与 SQL 语句一起使用,也可以与列表一起使用。
这是我的代码:
public static class TestableDbFunctions
{
[System.Data.Entity.DbFunction("Edm", "DiffDays")]
public static double? DiffDays(DateTime? dateValue1, DateTime? dateValue2)
{
if (!dateValue1.HasValue || !dateValue2.HasValue)
return null;
return (double)((dateValue2.Value - dateValue1.Value).TotalDays);
}
}
如您所见,代码计算了两个 DateTimes
.
我的问题是:代码应该是(dateValue2.Value - dateValue1.Value).TotalDays
还是(dateValue1.Value - dateValue2.Value).TotalDays
?
提前致谢。
由于您试图遵守 SQL,最接近的类似物是 DateDiff。第一个参数是 start date
,第二个参数是 end date
。代码应该是
return (endDate - startDate).TotalDays;