Represents a collection of RecurrenceRule objects.
For a list of all members of this type, see RecurrenceRuleCollection Members.
System.Object
System.Collections.CollectionBase
Aspose.iCalendar.RecurrenceRuleCollection
[Visual Basic]Public Class RecurrenceRuleCollection
Remarks
Corresponds to a collection of RRULE or EXRULE parts of a recurrence pattern.
Example
Every 20th Monday of the year, forever:
[C#]
//Create the pattern programmatically.
RecurrencePattern pattern = new RecurrencePattern();
pattern.StartDate = new DateTime(1997, 5, 19, 9, 0, 0);
RecurrenceRule rule = pattern.RRules.Add();
rule.Frequency = Frequency.Yearly;
rule.ByDay.Add(20, DayOfWeek.Monday);
DateCollection dates = pattern.GenerateOccurrences(
new DateTime(1997, 5, 19, 9, 0, 0),
new DateTime(1999, 5, 17, 9, 0, 0));
foreach (DateTime d in dates)
Console.WriteLine(d);
...
//Create the pattern from iCalendar string.
RecurrencePattern pattern = new RecurrencePattern(
"DTSTART;TZID=US-Eastern:19970519T090000\n" +
"RRULE:FREQ=YEARLY;BYDAY=20MO");
DateCollection dates = pattern.GenerateOccurrences(
new DateTime(1997, 5, 19, 9, 0, 0),
new DateTime(1999, 5, 17, 9, 0, 0));
foreach (DateTime d in dates)
Console.WriteLine(d);
[VB]
'Create the pattern programmatically.
Dim pattern As RecurrencePattern = New RecurrencePattern
pattern.StartDate = New DateTime(1997, 5, 19, 9, 0, 0)
Dim rule As RecurrenceRule = pattern.RRules.Add()
rule.Frequency = Frequency.Yearly
rule.ByDay.Add(20, DayOfWeek.Monday)
Dim dates As DateCollection = pattern.GenerateOccurrences( _
New DateTime(1997, 5, 19, 9, 0, 0), New DateTime(1999, 5, 17, 9, 0, 0))
For Each d As DateTime In dates
Console.WriteLine(d)
Next
...
'Create the pattern from iCalendar string.
Dim pattern As RecurrencePattern = New RecurrencePattern( _
"DTSTART;TZID=US-Eastern:19970519T090000" + ControlChars.CrLf + _
"RRULE:FREQ=YEARLY;BYDAY=20MO")
Dim dates As DateCollection = pattern.GenerateOccurrences( _
New DateTime(1997, 5, 19, 9, 0, 0), New DateTime(1999, 5, 17, 9, 0, 0))
For Each d As DateTime In dates
Console.WriteLine(d)
Next
Requirements
Namespace: Aspose.iCalendar
Assembly: Aspose.iCalendar (in Aspose.iCalendar.dll)
See Also
RecurrenceRuleCollection Members | Aspose.iCalendar Namespace