Communiquer avec EWS à l'aide de l'API managée EWSCommunicate with EWS by using the EWS Managed API

Trouvez des informations sur l’utilisation de l’API managée EWS pour communiquer avec EWS dans Exchange.Find information about how to use the EWS Managed API to communicate with EWS in Exchange.

La classe ExchangeService de l’API managée EWS contient les méthodes et les propriétés qui permettent de définir les informations d’identification de l’utilisateur, d’identifier le point de terminaison EWS, d’envoyer et de recevoir des messages SOAP et de configurer la liaison pour communiquer avec EWS.The ExchangeService class in the EWS Managed API contains the methods and properties that you use to set user credentials, identify the EWS endpoint, send and receive SOAP messages, and configure the binding to communicate with EWS. Avant de pouvoir utiliser l’API managée EWS pour effectuer une tâche, vous devez créer une instance de la classe ExchangeService et la lier à EWS.Before you can use the EWS Managed API to perform any task, you have to create an instance of the ExchangeService class and bind it to EWS.

Une fois que vous avez configuré un objet ExchangeService avec les informations d’identification de l’utilisateur et le point de terminaison EWS, tout objet Mailbox qui fait référence à l’objet ExchangeService peut utiliser les types de méthodes suivants pour communiquer avec EWS :After you set up an ExchangeService object with user credentials and the EWS endpoint, any mailbox object that references the ExchangeService object can use the following method types to communicate with EWS:

  • Méthodes de l’objet ExchangeService : toutes les méthodes sur l’objet ExchangeService qui ne sont pas héritées du type d' objet de base effectuent des appels vers EWS.ExchangeService object methods — All the methods on the ExchangeService object that are not inherited from the base Object type make calls to EWS.

  • Éléments de boîte aux lettres Exchange et type de dossier.Exchange mailbox item and folder type methods.

Tableau 1. Méthodes de boîte aux lettres et de type de dossier qui communiquent avec EWSTable 1. Mailbox item and folder type methods that communicate with EWS

MéthodeMethod FonctionWhat it does Opérations qu’il appelleOperations that it calls
LoadLoad
Obtient les propriétés d’un élément, d’une pièce jointe ou d’un objet de configuration utilisateur.Gets properties on an item, attachment, or user configuration object.
Opération GetItemGetItem operation

Opération GetAttachmentGetAttachment operation

Opération GetUserConfigurationGetUserConfiguration operation
RattachBind
Remplit un nouvel élément sur le client avec les informations d’un élément existant sur le serveur.Populates a new item on the client with information from an existing item on the server.
Opération GetItemGetItem operation
SaveSave
Enregistre la copie de l’élément client sur le serveur.Saves the copy of the client item on the server.
Opération UpdateItemUpdateItem operation

Opération UpdateFolderUpdateFolder operation

Opération CreateItemCreateItem operation

Opération CreateFolderCreateFolder operation
Mettre à jourUpdate
Met à jour le serveur avec les modifications apportées sur le client.Updates the server with the changes made on the client.

Pour les éléments et les dossiers, la méthode Update utilise l' opération UpdateItem et l' opération UpdateFolder.For items and folders, the Update method uses the UpdateItem operation and the UpdateFolder operation.
Opération UpdateItemUpdateItem operation

Opération UpdateFolderUpdateFolder operation
SupprimerDelete
Supprime un élément sur le serveur.Deletes an item on the server.

Pour les éléments et les dossiers, la méthode Delete utilise le et l' opération DeleteFolder.For items and folders, the Delete method uses the and the DeleteFolder operation.
Opération DeleteItemDeleteItem operation

Opération DeleteFolderDeleteFolder operation
CopyCopy
Crée une copie de l’élément ou des dossiers sur le serveur.Creates a copy of the item or folders on the server.
Opération CopyItemCopyItem operation

CopyFolder, opérationCopyFolder operation
MoveMove
Déplace des éléments ou des dossiers sur le serveur.Moves items or folders on the server.
Opération MoveItemMoveItem operation

Opération MoveFolderMoveFolder operation

Pour utiliser l’API managée EWS pour communiquer avec EWSTo use the EWS Managed API to communicate with EWS

  1. Instanciez la classe ExchangeService .Instantiate the ExchangeService class.

     ExchangeService service = new ExchangeService();
    

    Notes

    L’instanciation de ExchangeService avec un constructeur vide crée une instance liée à la dernière version connue d’Exchange.Instantiating ExchangeService with an empty constructor will create an instance that is bound to the latest known version of Exchange. Vous pouvez également cibler une version spécifique d’Exchange en spécifiant version comme paramètre.Alternatively, you can target a specific version of Exchange by specifying version as a parameter. ExchangeService service = new ExchangeService(ExchangeVersion.Exchange2007_SP1);

  2. Définissez les informations d’identification de l’utilisateur qui envoie des demandes au serveur Exchange.Set the credentials of the user who sends requests to the Exchange server. Si vous souhaitez vous connecter à EWS à partir d’un ordinateur connecté au domaine, à l’aide des informations d’identification de l’utilisateur authentifié, définissez la propriété UseDefaultCredentials de l’objet ExchangeService sur true.If you want to connect to EWS from a computer that is logged on to the domain, using the credentials of the authenticated user, set the UseDefaultCredentials property on the ExchangeService object to true.

     // Connect by using the default credentials of the authenticated user.
     service.UseDefaultCredentials = true;
    

    Si vous ne souhaitez pas vous connecter à l’aide des informations d’identification par défaut de l’utilisateur, définissez la propriété Credentials sur l’objet ExchangeService afin de spécifier explicitement les informations d’identification d’un autre utilisateur.If you do not want to connect by using the default user credentials, set the Credentials property on the ExchangeService object to explicitly specify the credentials of a different user. Si vous utilisez Exchange Online ou Exchange Online dans le cadre d’Office 365, vous utiliserez l’authentification de base, avec un nom d’utilisateur et un mot de passe.If you are using Exchange Online or Exchange Online as part of Office 365, you'll use basic authentication, with just a user name and password. Un nom de domaine est requis pour l’authentification NTLM.A domain name is required for NTLM authentication.

     // Connect by using the credentials of user1 at contoso.com.
     service.Credentials = new WebCredentials("user1@contoso.com", "password");
    

    Vous pouvez également spécifier les informations d’identification de l’utilisateur à l’aide du nom de domaine et du mot de passe de l’utilisateur.You can also specify the credentials of the user by using the user's domain name and password.

     // Connect by using the credentials of contoso/user1.
     service.Credentials = new WebCredentials("user1", "password", "contoso");
    

    Notes

    Si la propriété UseDefaultCredentials est définie sur true, la valeur de la propriété Credentials est ignorée.If the UseDefaultCredentials property is set to true, the value of the Credentials property is ignored.

  3. Définissez l’URL du point de terminaison EWS.Set the URL of the EWS endpoint. Cette URL localise le fichier Exchange. asmx sur le serveur d’accès au client.This URL locates the exchange.asmx file on Client Access server.

     // Use Autodiscover to set the URL endpoint.
     service.AutodiscoverUrl("user1@contoso.com");
    

    Notes

    Bien que vous puissiez définir explicitement la propriété URL de ExchangeService sur une valeur codée en dur, nous vous recommandons d’utiliser à la place le service de découverte automatique, pour les raisons suivantes : > la découverte automatique détermine le meilleur point de terminaison pour un utilisateur donné (le point de terminaison le plus proche du serveur de boîtes aux lettres de l’utilisateur).Although you can explicitly set the Url property of the ExchangeService to a hardcoded value, we recommend that you use the Autodiscover service instead, for the following reasons: > Autodiscover determines the best endpoint for a given user (the endpoint that is closest to the user's Mailbox server). > l’URL EWS peut changer si de nouveaux serveurs d’accès au client sont déployés.> The EWS URL might change if new Client Access servers are deployed. Dans ce scénario, l’utilisation de la découverte automatique signifie qu’aucune modification de code n’est nécessaire.In this scenario, using Autodiscover means no code changes are necessary. > vous devez définir l’URL explicitement ou appeler AutodiscoverUrl, mais vous ne devez pas effectuer les deux.> You should either set the URL explicitly or call AutodiscoverUrl, but you should not do both.

Voir aussiSee also