public static void Main() { DateTime myStartDate; int myPeriod; for (RECUR_FREQUENCY myRecurrenceFrequency = RECUR_FREQUENCY.DAYS_IN_MINUTES; myRecurrenceFrequency <= RECUR_FREQUENCY.MONTHS; myRecurrenceFrequency++) { switch (myRecurrenceFrequency) { case RECUR_FREQUENCY.DAYS_IN_MINUTES: myPeriod = 4320; // every 3 days myStartDate = DateTime.Today; // Use today's date break; case RECUR_FREQUENCY.WEEKS: myPeriod = 2; // every 2 weeks myStartDate = DateTime.Today.AddYears(-1); // Use a year ago from today break; case RECUR_FREQUENCY.MONTHS: myPeriod = 12; // every 12 months myStartDate = new DateTime(2008, 4, 6); // Use April 6, 2008 break; default: myPeriod = 1; myStartDate = DateTime.Today; break; } RecurrenceValues myRecurrenceValues = new RecurrenceValues(myStartDate, myPeriod, myRecurrenceFrequency); DateTime validRecurrence = CalculateValidRecurrence(myRecurrenceValues, myRecurrenceValues.startDate); if (myRecurrenceFrequency == RECUR_FREQUENCY.MONTHS) { break; } else { DisplayValues(myCal, myRecurrenceValues.startDate, myRecurrenceValues, validRecurrence); } } }
public RecurrenceValues(DateTime myStartDate, int myPeriod, RECUR_FREQUENCY myRecurrenceFrequency) { startdate = myStartDate; period = myPeriod; recurrencefrequency = myRecurrenceFrequency; }