//在ASP.NET中怎么样计算两个日期相差的年、月份、日期、小时、分钟 、秒等
// 调用
// DateTime a=Convert.ToDateTime("2006-01-01 00:00");
// DateTime b=Convert.ToDateTime("2005-01-01 00:00");
// double d=Bll.Common.DateDiff(Bll.Common.EnumDateCompare.day,a,b);
// Response.Write(d.ToString("f0"));//四舍五入
public enum EnumDateCompare
{
year =1,
month =2,
day =3,
hour =4,
minute =5,
second =6
}
public static double DateDiff(EnumDateCompare howtocompare, System.DateTime startDate, System.DateTime endDate)
{
double diff=0;
System.TimeSpan TS = new System.TimeSpan(endDate.Ticks-startDate.Ticks);
switch (howtocompare)
{
case EnumDateCompare.year:
diff = Convert.ToDouble(TS.TotalDays/365);
break;
case EnumDateCompare.month:
diff = Convert.ToDouble((TS.TotalDays/365)*12);
break;
case EnumDateCompare.day:
diff = Convert.ToDouble(TS.TotalDays);
break;
case EnumDateCompare.hour:
diff = Convert.ToDouble(TS.TotalHours);
break;
case EnumDateCompare.minute:
diff = Convert.ToDouble(TS.TotalMinutes);
break;
case EnumDateCompare.second:
diff = Convert.ToDouble(TS.TotalSeconds);
break;
}
return diff;
}