2011-12-24 2 views
1

J'utilise le code ci-dessous pour lire les messages de ma boîte de réception en utilisant ews. Je suis capable de lire le sujet etc. Mais comment lire la valeur du champ personnalisé?Comment lire la valeur du champ personnalisé

ExchangeService service = new ExchangeService(ExchangeVersion.Exchange2007_SP1); 
service.Credentials = new NetworkCredential("username", "password", "domain"); 
service.Url = new Uri("https://server/ews/exchange.asmx"); 
FindItemsResults<Item> findResults = service.FindItems(WellKnownFolderName.Inbox, new ItemView(100)); 

foreach (Item item in findResults.Items) 
{ 
    string str=item.Subject; 
    foreach (ExtendedProperty extendedProperty in item.ExtendedProperties) 
    { } 
} 

J'ai essayé item.ExtendedProperties. Mais le compte est toujours zéro. Quelqu'un peut-il me dire comment lire la valeur du champ personnalisé?

Merci à l'avance

Répondre

0

Selon this MSDN article, vous devez ajouter un ensemble de propriétés pour les propriétés étendues que vous souhaitez récupérer au paramètre ItemView de la méthode FindItems.

Par exemple, votre ligne:

FindItemsResults<Item> findResults = service.FindItems(WellKnownFolderName.Inbox, new ItemView(100)); 

devient:

ItemView view = new ItemView(100); 

Guid MyPropertySetId = new Guid("{C11FF724-AA03-4555-9952-8FA248A11C3E}"); 

view.PropertySet = new PropertySet(BasePropertySet.IdOnly, ItemSchema.Subject, extendedPropertyDefinition); 

FindItemsResults<Item> findResults = service.FindItems(WellKnownFolderName.Inbox, view); 
Questions connexes