C#中如何取得两个日期的时间间隔,例如 2005-10-10 到 2006-02-12的时间间隔天数,

解决方案 »

  1.   

    //在asp.net中怎么样计算两个日期相差的年、月份、日期、小时、分钟 、妙等
    //        调用
    //        DateTime a=Convert.ToDateTime("2005-09-03 20:15");
    //        DateTime b=Convert.ToDateTime("2005-09-04 09:09 ");
    //        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;
    }
      

  2.   

    SELECT DATEDIFF(day, 开始时间, 结束时间) AS no_of_days  from test where ????
      

  3.   

    用函数 datediff(date1,date2) 就可以啦!
      

  4.   

    hbzy123(DemoHunter)datediff() 是sql语言里的函数
      

  5.   

    job_2006,我是kent3721对说的。
    kent3721:
    datediff()
      

  6.   

    TimeSpan ts=datatime1.Subtract(datatime2);
       ts.Days就是天数
      

  7.   

    在C#中用DateTime类的静态函数Subtract
    eg:
    DateTime dt=new DateTime();
    dt=DateTime.Now.Subtract(Convert.ToDateTime("2005-09-04 09:09"));
      

  8.   

    更正上面的,Subtract不是静态的