2010-11-12 32 views
1

我试图编写一个简单的示例程序来检查Exchange 2010服务器上的任何新邮件。据我所知,我得到的代码应该可以正常工作。Exchange EWS托管API - XML中的意外标记

我设置服务如下:

ExchangeService service = new ExchangeService(); 

service.Credentials = new WebCredentials("[email protected]", "password"); 

service.Url = new Uri("https://address/owa"); 

在执行以下代码:

 int unreadMail = 0; 

     // Add a search filter that searches on the body or subject. 
     List<SearchFilter> searchFilterCollection = new List<SearchFilter>(); 
     searchFilterCollection.Add(new SearchFilter.ContainsSubstring(ItemSchema.Subject, "Defense")); 

     // Create the search filter. 
     SearchFilter searchFilter = new SearchFilter.SearchFilterCollection(LogicalOperator.Or, searchFilterCollection.ToArray()); 

     // Create a view with a page size of 50. 
     ItemView view = new ItemView(50); 

     // Identify the Subject and DateTimeReceived properties to return. 
     // Indicate that the base property will be the item identifier 
     view.PropertySet = new PropertySet(BasePropertySet.IdOnly, ItemSchema.Subject, ItemSchema.DateTimeReceived); 

     // Order the search results by the DateTimeReceived in descending order. 
     view.OrderBy.Add(ItemSchema.DateTimeReceived, SortDirection.Descending); 

     // Set the traversal to shallow. (Shallow is the default option; other options are Associated and SoftDeleted.) 
     view.Traversal = ItemTraversal.Shallow; 

     // Send the request to search the Inbox and get the results. 
     FindItemsResults<Item> findResults = service.FindItems(WellKnownFolderName.Inbox, searchFilter, view); 

     // Process each item. 
     foreach (Item myItem in findResults.Items) 
     { 
      if (myItem is EmailMessage) 
      { 
       if (myItem.IsNew) unreadMail++; 

      } 
     } 

我得到这个错误(在FindItemResults行):

'>' is an unexpected token. The expected token is '"' or '''. Line 1, position 63. 

这似乎是API实际生成的XML中的一个错误,我尝试了一些不同的代码(所有的代码都一样)相同的行),并没有发现任何工作。

任何想法?在直接来自API的时候有点遗憾!

干杯,丹尼尔。

回答

相关问题