Pièces jointes et EWS dans Exchange

Découvrez les pièces jointes et la façon dont votre API managée EWS ou EWS dans le client Exchange les représente.

En règle générale, les pièces jointes sont associées à des éléments de courrier électronique, mais en fait, tous les éléments EWS (messages électroniques, éléments de calendrier, contacts, tâches) peuvent inclure des pièces jointes.

Types de pièces jointes

EWS classe les pièces jointes en deux groupes : les pièces jointes de fichiers et les pièces jointes d’éléments.

  • Pièces jointes d’éléments : Éléments EWS fortement typés, tels que les messages électroniques et les éléments de calendrier, qui sont attachés à un autre élément EWS fortement typé. Tout élément fortement typé qui peut être créé à l’aide de l’API managée EWS ou EWS peut être utilisé comme pièce jointe d’élément. Le contenu d’une pièce jointe d’élément est l’élément fortement typé, ce qui permet d’accéder facilement à toutes ses propriétés. Les pièces jointes d’élément peuvent avoir leurs propres pièces jointes d’éléments, donc une hiérarchie de pièces jointes d’éléments (ou l’imbrication de pièces jointes) est possible.

  • Pièces jointes : Tout fichier, tel qu’un fichier .txt, .jpg, .zip, .pdf ou même un fichier .msg. Une pièce jointe a seulement quelques propriétés, dont l’une est le contenu encodé en base 64 du fichier.

  • Pièces jointes de référence : Toute pièce jointe référencée par un fournisseur de fichiers, par exemple un fichier situé dans le cloud. Une pièce jointe peut provenir de plusieurs fournisseurs.

Lorsque vous ajoutez ou récupérez des pièces jointes à partir d’un élément, vous le faites différemment selon qu’il s’agit d’une pièce jointe de fichier ou d’une pièce jointe d’élément. Par exemple, pour ajouter une pièce jointe à un élément, vous pouvez simplement transmettre l’emplacement du fichier. Pour ajouter un élément existant en tant que pièce jointe d’élément, vous devez copier les propriétés ou le contenu MIME de l’élément existant dans une nouvelle pièce jointe d’élément ; vous ne pouvez pas simplement lier à l’élément existant. Il est donc important de faire la distinction entre les deux types de pièces jointes. Pour plus d’informations sur les différences entre les pièces jointes d’élément et les pièces jointes de fichiers, consultez les articles de cette section.

Comment les pièces jointes sont-elles représentées par programmation ?

Les pièces jointes sont stockées dans une collection sur l’élément EWS. La collection pièces jointes se compose de pièces jointes de fichiers et/ou de pièces jointes d’éléments. Les métadonnées relatives à la collection de pièces jointes sont disponibles lorsque vous obtenez un élément à l’aide de la méthode Item.Bind de l’API managée EWS ou de l’opération GetItem EWS, mais des appels supplémentaires sont nécessaires pour récupérer réellement le contenu des pièces jointes.

Tableau 1. Métadonnées d’élément sur les pièces jointes

Entité de métadonnées Propriété d’API managée EWS Élément EWS
Indicateur de pièce jointe (n’indique pas les pièces jointes insérées)
Item.HasAttachments
HasAttachments
collection attachment
Item.Attachments
Pièces jointes
ID des pièces jointes
Attachment.Id
AttachmentId

Tableau 2. Entités de pièce jointe

Type de pièce jointe Classe d’API managée EWS Élément EWS
Pièce jointe
FileAttachment
FileAttachment
Pièce jointe d’élément
ItemAttachment
ItemAttachment<TItem>
ItemAttachment
Pièce jointe de référence
ComplexType ReferenceAttachmentType (EWS)
ReferenceAttachment

Pièces jointes incorporées

Les pièces jointes incorporées sont une race spéciale d’attachement. Les pièces jointes de fichiers et les pièces jointes d’éléments peuvent être des pièces jointes inline. Une pièce jointe incorporée apparaît dans le contenu du corps et conserve sa position par rapport au reste du contenu de l’élément.

Une pièce jointe est une pièce jointe inline si la propriété IsInline de l’API managée EWS ou l’élément EWS IsInline a la valeur true. Les pièces jointes inline utilisent les propriétés et éléments facultatifs suivants pour identifier l’emplacement d’une pièce jointe inline :

Notez que la propriété HasAttachments de l’API managée EWS et l’élément EWS HasAttachments ne reflètent pas l’existence des pièces jointes inline, et c’est pourquoi les pièces jointes inline sont également appelées pièces jointes masquées. Par conséquent, si vous définissez la propriété IsInline de l’API managée EWS ou l’élément EWS IsInline sur true, et que l’élément n’a pas d’autres pièces jointes, HasAttachments est défini sur false. Si votre client utilise HasAttachments pour remplir un indicateur de pièce jointe ou une icône dans un e-mail, n’oubliez pas que l’icône n’apparaîtra pas pour les e-mails avec des pièces jointes inline.

Dans cette section

Voir aussi