/// <summary> /// Create a list of date that a transaction of this Budget Item will occur on between /// the start date and the finish date. /// </summary> /// <param name="start"></param> /// <param name="finish"></param> /// <returns></returns> public BudgetItemOccurenceList GenerateOccurrences(DateTime start, DateTime finish) { BudgetItemOccurenceList occs = new BudgetItemOccurenceList(); DateTime d = GetFirstOccurrenceDate(start); while (d < finish) { occs.Add(new BudgetItemOccurence() { Date = d, BudgetItem = this }); d = GetNextOccurrenceDate(d); } return occs; }