Создание службы CalDAV с .Net - PullRequest
       51

Создание службы CalDAV с .Net

11 голосов
/ 27 ноября 2009

Я хочу создать в своем приложении календарь, который смогут просматривать внешние пользователи.

Формат CalDAV (в основном, WebDAV + iCalendar), по-видимому, относительно широко поддерживается, хотя некоторые клиенты (например, Outlook) довольно необычно. Совершенно новый для меня, хотя.

Я хочу публиковать события извне, мне не нужно, чтобы пользователи могли их обновлять.

Текстовый формат событий в файлах .ics выглядит относительно простым:

BEGIN:VCALENDAR
VERSION:2.0
CALSCALE:GREGORIAN

BEGIN:VEVENT
DTSTART:20091130T000000Z
DTEND:20091201T000000Z
SUMMARY:Test event for calendar format
LOCATION:Company site
DESCRIPTION:Test event.\nMore text on a new line
END:VEVENT

END:VCALENDAR

Однако я не хочу писать свой собственный конструктор файлов ics. Названия клавиш, начинающиеся в каждой строке, не кажутся слишком согласованными между файлами ics.

Есть ли реализация .Net там? В идеале я не хочу настраивать целую реализацию WebDAV - просто возможность получать календарь только для чтения.

В основном я хочу, чтобы это было по URL, который пользователи могут синхронизировать с iPhone, Android и телефонов Blackberry. Я знаю, что они могут обрабатывать услуги CalDAV от некоторых поставщиков, но не от других (например, мой iPhone может синхронизироваться с календарем Google, но происходит сбой с событиями FaceBook) - кто-нибудь знает, почему?

Я думаю, что события могут также содержать вложения MIME - достаточно ли это поддерживается, чтобы на них тоже стоило посмотреть?

Обновление

Дальнейшие исследования по этому вопросу выявили некоторые странные несоответствия в большинстве реализаций. Ни одна из основных мобильных клиентских ОС (iPhone, Blackberry, Android) не может обрабатывать файлы .ics.

Однако iPhone может открывать .ics из URL-адреса (выбрать подписку на календарь), и это также работает с FaceBook. Однако Blackberry и Android не могут. Я думаю, что Blackberry может обрабатывать полную опцию CalDAV (а не только файл .ics), но не очень разбираюсь в ее программировании.

Есть ли последовательный способ сделать это там?

Ответы [ 3 ]

13 голосов
/ 22 февраля 2010

Я использовал http://sourceforge.net/projects/dday-ical/ для проекта в прошлом году. Работает отлично!

1 голос
/ 07 ноября 2013

Компания IT Hit WebDav System предлагает

  • IT Hit WebDAV Server Engine v3 for .Net (от 1250 долл. США) и
  • a IT Hit WebDAV Client .Net (начиная с 350 долларов).

Работает с iOS Calendar, Android CalDAV-Sync, Mac OS X Calendar, Mozilla Lightning, eM Client, плагином Bynari Outlook, Evolution и другими.

0 голосов
/ 03 февраля 2018

Если вы ищете клиент CalDAV, то я предлагаю DAVDroid , это лучший клиент CalDAV, который я никогда не пробовал. Это разъем для учетной записи календаря вашего телефона, позволяющий получать данные с вашего сервера CalDAV из любого приложения-календаря, установленного на вашем телефоне.

Другие интересные клиенты CalDAV:

Windows

  • Mozilla Thunderbird с расширением Lightning : Основная проблема этого клиента заключается в том, что у dsent есть автообнаружение, поэтому вам придется написать маршрут вашей коллекции.

Если вы ищете библиотеку ICalendar для .NET, вы можете проверить ту, которую мы с моим другом строили: ICalendar

Любой дудт, который вы можете спросить у нас !!!

...