C# 计算DiffDays函数日期时间顺序-较大的日期时间是第一个还是第二个
我正在编写一个MVC5 internet应用程序,我想编写一个既能处理SQL语句又能处理列表的函数 这是我的密码:C# 计算DiffDays函数日期时间顺序-较大的日期时间是第一个还是第二个,c#,linq-to-sql,asp.net-mvc-5,linq-to-entities,datediff,C#,Linq To Sql,Asp.net Mvc 5,Linq To Entities,Datediff,我正在编写一个MVC5 internet应用程序,我想编写一个既能处理SQL语句又能处理列表的函数 这是我的密码: public static class TestableDbFunctions { [System.Data.Entity.DbFunction("Edm", "DiffDays")] public static double? DiffDays(DateTime? dateValue1, DateTime? dateValue2) { if
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);
}
}
如您所见,代码计算两个日期时间之间的天数差
我的问题是:代码应该是(dateValue2.Value-dateValue1.Value)。TotalDays
还是(dateValue1.Value-dateValue2.Value)。TotalDays
请提前感谢。因为您正在尝试遵从SQL,最接近的类比是。第一个参数是开始日期
,第二个参数是结束日期
。代码应该是
return (endDate - startDate).TotalDays;
为什么不返回绝对值?你的意思是你总是想返回一个正值?你能告诉我如何自己计算吗?@user3736648阅读我提供的对DateDiff
的引用。