Jak anulować wydarzenie w kalendarzu za pomocą plików ics?
Jednym z naszych wymagań jest tworzenie plików iCalendar (.ics) i wysyłanie ich w wiadomościach e-mail jako załącznik. UżywamyDDay.Ical.dll tworzyć pliki ics jako:
// Create a new iCalendar
iCalendar iCal = new iCalendar();
// Create the event, and add it to the iCalendar
Event evt = iCal.Create<Event>();
// Set information about the event
evt.Start = new iCalDateTime(SomeStartTime);
evt.End = new iCalDateTime(SomeEndTime);
evt.Location = "At so and so place";
evt.Description = "Some Description";
evt.Summary = "About Some Subject";
iCal.Method = "PUBLISH";
// Serialize (save) the iCalendar
iCalendarSerializer serializer = new iCalendarSerializer();
serializer.Serialize(iCal, @"iCalendar.ics");
Cały proces to:
Użytkownik1 tworzy plik iCal dla określonej daty i godziny i wysyła go do użytkownika2.Użytkownik2 otworzy plik ics i przyjmie zaproszenie. Element spotkania zostanie utworzony w LOKALNEJ perspektywie użytkownika User2.Teraz przypuśćmy, że z jakiegokolwiek powodu, jeśli spotkanie zostanie anulowane, użytkownik 1 musi utworzyć plik ics i wysłać go do użytkownika2, aby użytkownik2 mógł anulować swoje wydarzenie z perspektywy lokalnej.
Jak utworzyć taki plik ics?