2011-12-24 19 views
1

私は以下のコードを使用して、受信トレイからewを使用してメールを読み取ります。私はSubjectなどを読むことができますが、カスタムフィールドの値を読み取る方法は?カスタムフィールド値を読み取る方法

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) 
    { } 
} 

私はitem.ExtendedPropertiesを試しました。しかし、カウントは常にゼロです。カスタムフィールドの値を読み取る方法を教えてもらえますか?事前

答えて

0

おかげthis MSDN articleによると、あなたはFindItemsメソッドのItemViewパラメータに取得する拡張プロパティのプロパティセットを追加する必要があります。例えば

、あなたのライン:

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

は次のようになります。

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); 
関連する問題