当前位置:K88软件开发文章中心编程语言.NET.NET01 → 文章内容

获得任意两日期之间的有效工作日

减小字体 增大字体 作者:佚名  来源:翔宇亭IT乐园  发布时间:2018-12-31 11:48:34

:2011-03-03 20:30:00

在《C#中获取某月的实际工作日》一文中讲了如何获得当月实际工作天数的方法,有时,我们可能要得到两个日期之间有效工作日的方法,下面就给具体的源代码。

#region 获得任意两日期之间的有效工作日(不包括周六日)
        private int getDays(System.DateTime date1,System.DateTime date2)
        {
            string m=DateDiff(EnumDateCompare.day,date1,date2).ToString("f0");
           
            int mm=0;
            for(int i=0;i<=Convert.ToInt32(m);i++)
            {
                System.DateTime date=Convert.ToDateTime(date1.AddDays(i));
                switch (date.DayOfWeek)
                {
                    case System.DayOfWeek.Monday:
                    case System.DayOfWeek.Thursday:
                    case System.DayOfWeek.Tuesday:
                    case System.DayOfWeek.Wednesday:
                    case System.DayOfWeek.Friday:
                        mm=mm+1;
                        break;
                }               
            }
            return mm;
        }
        #endregion

具体使用方法如下:

DateTime date1=Convert.ToDateTime("2005-10-20");
        DateTime date2=Convert.ToDateTime("2005-11-01");

int days =getDays(date1,date2);


获得任意两日期之间的有效工作日