private void CreateHolidays() { GenericHolidaysDataSource source = new GenericHolidaysDataSource(); source.Add(new Holiday(1, 1, true, "New Year")); source.Add(new Holiday(26, 1, true, "Australia day")); source.Add(new Holiday(30, 3, true, "Good Friday")); source.Add(new Holiday(31, 3, true, "Easter")); source.Add(new Holiday(25, 4, false, "Anzac Day")); source.Add(new Holiday(DayOfWeek.Monday, 1, 6, true, "Queen's Birthday")); source.Add(new Holiday(6, 8, true, "Bank Holiday")); source.Add(new Holiday(DayOfWeek.Monday, 0, 10, true, "Labor Day")); source.Add(new Holiday(25, 12, true, "Christmas")); source.Add(new Holiday(26, 12, true, "Boxing Day")); this.source = source; }
public void Initialize() { interactor = new DynamicWorkDaysInteractor(); GenericHolidaysDataSource source = new GenericHolidaysDataSource(); source.Add(new Holiday(1, 1, true, "New Year")); source.Add(new Holiday(26, 1, true, "Australia day")); source.Add(new Holiday(30, 3, true, "Good Friday")); source.Add(new Holiday(31, 3, true, "Easter")); source.Add(new Holiday(25, 4, false, "Anzac Day")); source.Add(new Holiday(DayOfWeek.Monday, 1, 6, false, "Queen's Birthday")); source.Add(new Holiday(6, 8, true, "Bank Holiday")); source.Add(new Holiday(DayOfWeek.Monday, 0, 10, true, "Labor Day")); source.Add(new Holiday(25, 12, true, "Christmas")); source.Add(new Holiday(26, 12, true, "Boxing Day")); this.source = source; }
public int GetBizDays(DateTime startDate, DateTime endDate, IHolidaysDataSource holidaysSource) { List <DateTime> holidayDays = new List <DateTime>(); holidayDays.AddRange(holidaysSource.GetHolidays(startDate.Year)); if (startDate.Year != endDate.Year) { holidayDays.AddRange(holidaysSource.GetHolidays(endDate.Year)); } var totalBizDays = GetBizDays(startDate, endDate); var holidays = holidayDays.ToArray(); foreach (DateTime holiday in holidays) { if (holiday.InRange(startDate, endDate) && holiday.IsWeekday()) { totalBizDays--; } } return(totalBizDays); }