Tuesday, October 13, 2009

Add Working Days Only to a Date (Excluding Sat & San)

private DateTime getWorkingDate(DateTime dtFrom, int nDays)
{
int nDirection = 1;
if (nDays <0)
{
nDirection = -1;
} // move ahead the day of week
int nWeekday = nDays % 5;
while (nWeekday != 0)
{
dtFrom = dtFrom.AddDays(nDirection);
if (dtFrom.DayOfWeek != DayOfWeek.Saturday && dtFrom.DayOfWeek != DayOfWeek.Sunday)
{
nWeekday -= nDirection;
}
} // move ahead the number of weeks
int nDayweek = (nDays / 5) * 7;
dtFrom = dtFrom.AddDays(nDayweek);
return dtFrom;
}

No comments:

Post a Comment