计算差异天数函数日期时间顺序 - 较大的日期时间是排在第一位还是排在第二位



我正在编写一个MVC 5互联网应用程序,我想编写一个既可以处理SQL语句又可以使用List的函数。

这是我的代码:

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,第二个参数是 i end date。 代码应该是

return (endDate - startDate).TotalDays;

最新更新