12
votes

Création d'un service Caldav avec .NET

Je veux créer un calendrier dans mon application que les utilisateurs externes peuvent afficher.

Le format CALDAV (fondamentalement webdav + iCalendar) semble être relativement largement pris en charge, bien que si cela est plutôt inhabituel par certains clients (Outlook, par exemple) . Complètement nouveau pour moi cependant.

Je veux publier de l'extérieur des événements, je n'ai pas besoin d'utilisateurs pour pouvoir les mettre à jour.

Le format texte des événements dans les fichiers .iques apparaît relativement simple: xxx

Cependant, je ne veux pas vraiment écrire mon propre constructeur de fichiers ICS. Les noms de clés commençant par chaque ligne ne semblent pas également être très cohérents entre les fichiers ICS.

y a-t-il une mise en œuvre .NET là-bas? Idéalement, je ne veux pas mettre en place une implémentation globale WebDav - juste la possibilité de récupérer un calendrier en lecture seule.

Je veux principalement que cela soit à une URL que les utilisateurs puissent synchroniser de l'iPhone, Android et Téléphones BlackBerry. Je sais qu'ils peuvent gérer les services Caldav à partir de certains fournisseurs, mais pas d'autres (par exemple, mon iPhone peut synchroniser de Google Calendar, mais échoue avec les événements de Facebook) - Tout le monde a une idée de la raison pour laquelle?

Je pense que les événements peuvent également contenir MIME Pièces jointes - Est-ce suffisamment soutenu pour être à la recherche de la valeur?

Mise à jour

Des recherches supplémentaires sur cela ont identifié des incohérences étranges dans la plupart des implémentations. Aucun des principaux clients mobiles OSS (iPhone, BlackBerry, Android) ne peut gérer les fichiers.

Cependant, IPhones peut ouvrir un fichier .ique à partir d'une URL (choisissez de vous abonner à un calendrier) et cela fonctionne avec Facebook aussi. BlackBerry et Android ne peuvent cependant pas. Je pense que la BlackBerry peut gérer l'option Caldav complète (plutôt que le fichier .ique) mais je ne sais pas beaucoup de la programmation pour cela.

Y a-t-il un moyen constant de le faire là-bas?


1 commentaires

Je suis curieux, as-tu fini par faire quelque chose avec ça?


3 Réponses :


13
votes

J'ai utilisé http://sourceforge.net/projects/dday-ique/ Pour un projet l'année dernière. Fonctionne parfaitement!


3 commentaires

Est-ce toujours utilisable ou trop dépassé?


La dernière fois que la bibliothèque est mise à jour était en 2016. Y a-t-il une autre option?


Je viens de trouver autre chose. Je ne l'ai pas encore essayé, mais il y a même une documentation pour migrer de Day.ical. Github.com/rianjs/ical.net



1
votes

Le Société IT HIT Système WebDAV offre

  • Il a frappé le moteur WebDav Server V3 pour .NET (à partir de 1250 $)) et
  • A Il a frappé le client WebDAV .NET (à partir de 350 $).

    Cela fonctionne avec IOS Calendrier, Android Caldav-Sync, Mac OS X Calendrier, Mozilla Lightning, EM Client, Bynari Outlook Plugin, Evolution et autres.


1 commentaires

Juste un avertissement rapide c'est une solution payée pour la solution



0
votes

Si ce que vous recherchez est un client CalDAV alors ma suggestion est DAVDroid , c'est le meilleur CalDAV client Je ne l'ai jamais essayé. Il est un connecteur pour le compte de calendrier de votre téléphone permettant de consommer les données de votre serveur CalDAV de tout calendrier App installé sur votre téléphone.

D'autres clients CalDAV intéressants sont:

Windows:

  • Mozilla Thunderbird avec l'extension de foudre : Le principal problème de ce client est que dosent ont la découverte automatique de sorte que vous doivent écrire la route de votre collection.

    Si vous êtes à la recherche d'une bibliothèque ICalendar pour .NET, vous pouvez vérifier celui que mon ami et moi construction: ICalendar

    Tout doudt vous pouvez nous demander !!!


0 commentaires