Skip to content
Rian Stockbower edited this page Jun 1, 2018 · 7 revisions

Create a calendar with a recurring event

var now = DateTime.Now;
var later = now.AddHours(1);

//Repeat daily for 5 days
var rrule = new RecurrencePattern(FrequencyType.Daily, 1) { Count = 5 };

var e = new CalendarEvent
{
    Start = new CalDateTime(now),
    End = new CalDateTime(later),
    RecurrenceRules = new List<RecurrencePattern> { rrule },
};

var calendar = new Calendar();
calendar.Events.Add(e);

var serializer = new CalendarSerializer();
var serializedCalendar = serializer.SerializeToString(calendar);

Output:

BEGIN: VCALENDAR
VERSION:4.0
PRODID: -//github.com/rianjs/ical.net//NONSGML ical.net 4.0//EN
BEGIN:VEVENT
DTEND:20160704T172520
DTSTAMP:20160704T162520
DTSTART:20160704T162520
RRULE:FREQ=DAILY;COUNT=5
SEQUENCE: 0
UID: f4693a88-0a57-4761-b949-8822b8a507d2
END:VEVENT
END:VCALENDAR