2016-03-22 1 views
0

J'utilise le SDK Services Web Exchange 2010. Et j'ai besoin de récupérer des éléments en utilisant la méthode GetItem.Éléments de réponse EWS GetItems Ordre de tri

Par exemple:

var getItemTypes = new GetItemType(); 
getItemTypes.ItemIds = ids; 
getItemTypes.ItemShape = new ItemResponseShapeType() 
{ 
    BodyType = BodyTypeResponseType.Best, 
    BodyTypeSpecified = true, 
    BaseShape = DefaultShapeNamesType.AllProperties, 
    IncludeMimeContent = true, 
    IncludeMimeContentSpecified = true 
}; 

GetItemResponseType getItemResponse = esb.GetItem(getItemTypes); 

Et je veux savoir si les éléments en tableau getItemResponse.ResponseMessages.Items sont fortement correspond à un tableau « ids ».

Le problème est qu'il n'est pas toujours possible de récupérer l'ID de l'élément à partir de la réponse.

Quelqu'un sait-il la réponse?

Répondre

0

Lorsque vous effectuez une requête EWS par lots, Exchange Server répond dans l'ordre dans lequel la demande a été soumise. Par exemple, si vous aviez les ID de 4 éléments et l'ID de l'élément 2 de cette collection que vous utilisez lors de la soumission a été supprimé du dossier afin que l'ID ne soit plus valide dans les réponses, vous récupérez le ResponseMessage dans le second élément de responsecollection. soit une erreur indiquant que l'objet n'existe plus dans le magasin. (La documentation est un peu sommaire sur le code du proxy, mais si vous voulez lire un bon livre sur ce sujet, consultez les services web d'échange intérieur qui ont de meilleures explications).

Vive Glen

+0

Je pense aussi qu'il fonctionne presque certainement comme vous l'avez décrit. Mais j'essaie de trouver une preuve de la source respectée. – Max