2017-06-15 1 views
0

J'utilise le code suivant pour exporter un rendez-vous comme un ics fichierRendez-vous tiré par SAP n'a pas les participants dans le contenu mime

Dim properties = New PropertySet(BasePropertySet.FirstClassProperties, ItemSchema.MimeContent, AppointmentSchema.RequiredAttendees, AppointmentSchema.OptionalAttendees) 
Dim item = Appointment.Bind(_exchangeService, New ItemId(itemId), properties) 

Using fileStream = File.OpenWrite("C:\Test\appt.ics") 

    fileStream.Write(item.MimeContent.Content, 0, item.MimeContent.Content.Length) 

End Using 

Le fichier .ics résultant ne comprend pas de données pour les participants . Comment puis-je exporter ces données?

Lors du débogage, la propriété RequiredAttendees sur item est remplie avec des données.

Si j'exporte directement à partir d'Outlook, en utilisant File > Save As, les informations sur le participant sont là.

Exemple de sortie:

De perspectives 'Enregistrer sous': https://gist.github.com/rhamache/932365fab68af947686f7e7b45bb84bf

De EWS fichier exporté: https://gist.github.com/rhamache/61509c718da6f8072c0694958eb8ac70

Comme vous pouvez le voir, le fichier .ics généré à partir de SAP est manquant Les participants et X-ALT-DESC (probablement d'autres choses manquent aussi)

J'ai accès à Aspose si cela simplifie les choses

+0

pouvez-vous essayer avec l'API IEWSClient de Aspose.Email et voir si elle est utile pour vous? –

+0

@KashifIqbal Je ne peux pas authentifie avec EWS avec aspose, voir https://stackoverflow.com/questions/44633386/getewsclient-with-oauth-token-from-office-js – ryan

Répondre

2

Ceci est normal et à prévoir dans EWS voir https://msdn.microsoft.com/en-us/library/office/dn672316(v=exchg.150).aspx

Le flux MIME de rendez-vous est un fichier iCal (.ics). Le format .ics est pratique car Outlook et d'autres clients de messagerie peuvent l'identifier. Cette option n'est pas viable pour l'exportation de réunions car les informations sur les participants ne sont pas fournies dans le flux MIME. Les pièces jointes et autres propriétés peuvent ne pas être incluses dans le flux MIME. Envisagez de créer le format iCal à partir de l'objet Appointment ou du code XML renvoyé par l'opération GetItem. De cette façon, vous pouvez capturer plus de propriétés Exchange avec des propriétés étendues (propriétés X- ') dans le fichier iCal.Vous pouvez également exporter un rendez-vous au format XML.Appelez l'opération GetItem et enregistrez le fichier XML dans votre système. également utiliser la fonctionnalité de suivi dans l'API SAP Managed pour capturer le XML à mettre dans un fichier XML databas