3

Existe-t-il un moyen de rechercher Exchange à l'aide de l'API Gérée EWS pour tous les messages électroniques de TOUS les dossiers. J'utilise l'appel API FindItems - mais cela semble exiger que la recherche soit limitée à un seul dossier.Recherche de dossiers croisés dans Exchange à l'aide des services Web Exchange

private void InternalPurgeProcessFolder(FolderId folderId, ExchangeService service, SearchFilter searchCriteria) { 

     Logger.Info("Processing folder {0}", folderId.FolderName); 

     int pageSize = _runtimeParameters.ExchangeRetrievalPageSize; 
     ItemView itemView = new ItemView(pageSize); 
     itemView.PropertySet = Utils.BasicPropertySet(); 
     const int maxInterationsForTesting = 2; 
     int iterations = 0; 
     FindItemsResults<Item> findResults; 
     do { 
      ++iterations; 
      Logger.Debug("Start of iteration {0}", iterations); 
      findResults = service.FindItems(folderId, searchCriteria, itemView); 
      _dumper.ListDatesAndSubjectsBrief(findResults); 
      itemView.Offset += pageSize; 
     } while ((findResults.MoreAvailable) && (iterations < maxInterationsForTesting)); 
    } 

Répondre

3

Pour trouver des articles à travers les dossiers que vous pouvez créer un search folder et dans le SearchFolderParameters définissez les RootFolderIds dans le dossier racine de la boîte aux lettres et le mode traversal à SearchFolderTraversal.Deep.