2015-10-31 2 views
0

J'utilise EWS pour gérer les opérations des comptes de messagerie Exchange Server. Comment puis-je exporter tous les rendez-vous du calendrier dans le fichier .ics? J'ai essayé en suivant.Comment puis-je exporter tous les rendez-vous dans un fichier .ics à l'aide d'EWS?

string iCalFileName = Path.Combine(Path.GetTempPath(), "appointments.ics"); 
foreach (Appointment appointment in service.FindItems(WellKnownFolderName.Calendar, new ItemView(int.MaxValue))) 
{ 
    appointment.Load(); 
    using (FileStream fs = new FileStream(iCalFileName, FileMode.Create, FileAccess.Write)) 
    { 
     using (StreamWriter s = new StreamWriter(fs)) 
     { 
      s.WriteLine(appointment.MimeContent.Content);//error must load property before using it 
     } 
    } 
} 

Quelqu'un peut-il me suggérer ce qui me manque ici?

Répondre

0

Le MimeContent (et un certain nombre d'autres propriétés) ne sont pas retournés lorsque vous utilisez FindItem vous devez effectuer un appel GetItem distinct sur chaque élément pour récupérer cela. La meilleure chose à faire est LoadPropertiesFromItems d'utilisation qui sera lot la demande GetItem dans l'API Managed voir http://blogs.msdn.com/b/exchangedev/archive/2010/03/16/loading-properties-for-multiple-items-with-one-call-to-exchange-web-services.aspx

Vive Glen

+0

Je veux exporter tous les rendez-vous dans ics fichier même comme gmail. J'ai essayé par dessus mais je n'ai pas de succès. J'ai essayé par https://msdn.microsoft.com/en-us/library/office/dn672317(v=exchg.150).aspx. J'ai essayé votre solution aussi. Pouvez-vous s'il vous plaît me suggérer un lien ou un exemple qui m'aide à exporter tous les rendez-vous/réunions dans le fichier ics? –

+0

Je vous suggère de publier d'abord le calendrier http://blogs.technet.com/b/exchange/archive/2014/04/15/how-to-publish-anonymous-calendar-sharing-url-in-exchange-online -ou-échange-2013.aspx alors vous pouvez simplement obtenir ce flux Ical comme gmail. –