LINQ to sql,为我们提供了方便的计算日期间隔的内置方法,使用也很方便。引入命名空间System.Data.Linq.SqlClient,就可以使用SqlMethods提供的各种日期间隔计算方法计算日期差。
System.Data.Linq.SqlClient.SqlMethods.DateDiffDay(starttime,endtime),返回值为Int型。
.NET也为我们提供了计算日期间隔的方法,TimeSpan和SubStract。现在做一测试,有如下计算日期间隔代码:
现在传入参数starttime:2009-11-9 11:54:20,endtime:2009-10-8 15:34:41;
通过上面方法得到的返回值:uerdays:31.
使用LINQ方法查询计算:
得到返回结果为32.
为了保持两个方法所得结果的一致,在不计算组足天的情况下可以在本地将日期格式转换后再计算:
返回结果:userdays=32.
这样就保持了两个版本计算的数据一致。