日期SQL和C#中两个日期计算之间的日期差异产生不同的结果

我正在计算两个日期的日差.
在C#中
diffdays = (EndDate-StartDate).Days
因此,考虑到Enddate为2015年6月26日并且在2015年6月10日开始时,diffdays值为15,如调试时的Autos部分所示.
在SQL服务器中我正在做的事情
SELECT DATEDIFF(day, StartDate, EndDate )
其中EndDate是2015年6月26日,startdate是2015年6月10日,结果为16.
我需要这两天的差异是一样的.我做错了什么?
解决方法:
TimeSpan.Days属性仅返回整天,丢弃任何小数部分.根据您的两个DateTime的时间部分,您可以期待您所看到的行为.
尝试使用Date属性将时间部分取出等式(并有效地将两次设置为午夜):
diffdays = (EndDate.Date - StartDate.Date).Days
或者,您可以对TotalDays属性进行舍入(包括天数的小数部分):
diffdays = Math.Ceiling((EndDate - StartDate).TotalDays);