Warning : This page has been marked as an archive because the author consider that its content is no longer relevant.

J’ai précédemment expliqué comment créer différents types d’éléments, comment récupérer leurs identifiants. Aujourd’hui grâce à ces identifiants nous allons pouvoir supprimer ces mêmes éléments.

Nous allons reprendre le code où nous nous étions arrêté dans l’article “Comment récupérer l’identifiant d’un objet nouvellement créé”.

Je vais donc introduire une nouvelle méthode dont le code est commenté de façon à mieux la comprendre :

private static void DeleteItem(ExchangeServiceBinding esb, ItemIdType[] items)
{
    DeleteItemType dit = new DeleteItemType();
    dit.ItemIds = items;

    /* On déplace l’élément dans le dossier des éléments supprimés */
    dit.DeleteType = DisposalType.MoveToDeletedItems;

    /* On n'envoie aucune notification de suppression de rendez-vous */
    dit.SendMeetingCancellationsSpecified = true;
    dit.SendMeetingCancellations = CalendarItemCreateOrDeleteOperationType.SendToNone;

    DeleteItemResponseType response = esb.DeleteItem(dit);

    for (int i = 0; i < response.ResponseMessages.Items.Length; i++)
    {
        var ri = response.ResponseMessages.Items[i];

        if (ri.ResponseClass == ResponseClassType.Success)
            Console.Out.WriteLine("Suppression réussie");
        else if (ri.ResponseClass == ResponseClassType.Warning)
            Console.Out.WriteLine("Suppression réussie avec avertissements");
        else
            Console.Out.WriteLine("Suppression échouée");
    }
}

La méthode ci-dessus se charge donc de mettre à la corbeille tout les objets en fonctions de leurs identifiants.

En reprenant le code principal de la dernière fois celà nous donne donc :

IList<ItemType> result = CreateCalendarItem(esb, item);

/* On a créé qu'un seul objet donc on peux directement y accéder par index */
ItemIdType itemId = result[0].ItemId;

DeleteItem(esb, new ItemIdType[] { itemId });

Vous pouvez donc maintenant supprimer des objets dont vous avez les identifiants. Cela n’est certes pas très utile de supprimer un objet que l’on viens juste de créer aussi le prochain article consistera à savoir comment récupérer des objets déjà existants dans Exchange.

Comments