Próbowałem utworzyć kalendarz iCal w .NET, który można zsynchronizować z innymi urządzeniami. Używałem DDay.iCal do generowania zdarzeń iCal z moich obiektów danych i jak dotąd wszystko działa poprawnie. Z programu Outlook, mam zapisany do kalendarza (Dodaj kalendarz » z Internetem) poprzez wskazanie adresu URL, który generuje plik ICS:Dwukierunkowe, aktualizowane pliki iCal w .NET
Response.Clear();
Response.ContentType = "text/calendar";
Response.AddHeader("Content-Disposition", "inline; filename=\"Calendar.ics\"");
Response.Write(GenerateCalendar());
Response.End();
Zdarzenia są poprawnie importowane do kalendarza; jednak w żadnym oprogramowaniu Kalendarza, którego próbowałem, nie mogłem aktualizować ani usuwać zdarzeń. Nie oznacza to, że wystąpił błąd podczas odbierania powiadomienia o usunięciu; po prostu wszyscy klienci rozpoznają kalendarz jako tylko do odczytu.
Mój pomysł polega na tym, że dostarczając adresy URL, będę mógł mieć kontakt z moim serwerem w programie Outlook lub kalendarz Google, aby usunąć wydarzenie. Czy cały mój pomysł na to, że ma działać źle, czy po prostu brakuje mi odpowiednich właściwości? (A może jestem importowania kalendarza nieprawidłowo lub w celu rozpowszechniania go nieprawidłowo, jak na powyższym kodzie?)
Kalendarz generowane przez GenerateCalendar
powyżej, może wyglądać następująco:
BEGIN:VCALENDAR
VERSION:2.0
METHOD:PUBLISH
PRODID:-//My Company//My App//EN
URL:http://localhost/test/
X-WR-CALNAME:Test
BEGIN:VEVENT
DTEND:20110831T100100
DTSTAMP:20111028T091109
DTSTART:20110831T090100
SEQUENCE:0
SUMMARY:Test
UID:1
URL:http://localhost/test/?id=1
END:VEVENT
END:VCALENDAR
Witaj David. Potrzebuję utworzyć serwer CalDAV dla mojej aplikacji .NET, która zawiera kalendarz do synchronizacji z iPhonem i innymi urządzeniami mobilnymi. Pytam cię, czy możesz wskazać mi kierunek? A może możemy zrobić coś razem? – BennoDual
@ t.kehl: Nigdy nie zacząłem budować całej implementacji CalDAV. Myślę, że najlepszą opcją byłoby zainstalowanie serwera Exchange po stronie serwera i zsynchronizowanie z nim urządzeń przenośnych oraz użycie aplikacji do przesyłania rzeczy do Exchange. (Sam też tego nie robiłem, więc nie mam żadnych wskazówek) –