4 messaggi dal 09 dicembre 2011
Ciao a tutti
devo accedere ad un mailserver aziendale, recuperare le mail non lette dalla mailbox, elaborarle, marcarle come lette ed infine spostarle in un altra cartella della mailbox.
Ho utilizzato il web service di Exchange.
Riesco a far tutto meno che spostarle le mail, o meglio ho un comportamento strano, infatti dopo aver marcato la mail come letta ( questo effettivamente avviene infatti controllando in parallelo con un client la mail viene marcata),
vado a recuperare l'id del folder su cui devo spostare la mail ma al momento dello spostamento la mail effettivamente scompare nella Inbox ma nel folder di destinazione non c'e', e non riesco a trovatla in nessun folder!!

In pratica recupero il folder ID necessario allo spostamento:

private FolderId FindFolderIdByDisplayName(ExchangeService service, string DisplayName)
{
FolderView view = new FolderView(1);
SearchFilter searchFilter = new SearchFilter.ContainsSubstring(FolderSchema.DisplayName, DisplayName);
FindFoldersResults findFolderResults = service.FindFolders(WellKnownFolderName.Root, searchFilter, view);

if (findFolderResults.Folders.Count == 1)
{
return findFolderResults.Folders[0].Id;
}
else
{
return null;
}
}

e mi ritorna una lunga stringa codificata, poi semplicemente faccio
message.Move(MoveFolder);
Dove MoveFolder è l'Id ritornato dalla funzione sopra indicata ed il message e l'oggetto che contiene la mail da spostare, che naturalmente è corretto in quanto ho già fatto la sua lettura.
Mi date una mano a trovare la soluzione ?
Grazie

Tony

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.