2014-09-10 149 views
3

的項目我正在從微軟的Exchange此錯誤消息:的Exchange Web服務列出文件夾

的EWS編號是未通過您的請求指定的Exchange版本支持EwsLegacyId格式。請使用ConvertId方法將ID從EwsId轉換爲EwsLegacyId格式。

響應以下SOAP請求:

<?xml version="1.0" encoding="utf-8"?> 
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xmlns:m="http://schemas.microsoft.com/exchange/services/2006/messages" 
xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types" 
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> 
<soap:Header> 

</soap:Header> 
<soap:Body> 
    <m:FindItem Traversal="Shallow"> 
     <m:ItemShape> 
      <t:BaseShape>Default</t:BaseShape> 
      <!-- 
      <t:AdditionalProperties> 
       <t:FieldURI FieldURI="item:TextBody" /> 
       <t:FieldURI FieldURI="item:Body" /> 

      </t:AdditionalProperties> 
      --> 
     </m:ItemShape> 
     <m:IndexedPageItemView MaxEntriesReturned="100" Offset="0" BasePoint="Beginning" /> 
     <m:ParentFolderIds> 
      <t:FolderId Id="AQMkAGEzZTIzOWNmLWFiMGUtNDg5NC05NzNlLTUxN2FmNGQ3ZjIxMQAALgAAA95uXloT2IJPlNaCGuwj8ycBAObfRJ+1FF9PkWpl8+aNmhoAAAIBDAAAAA==" ChangeKey="AQAAABYAAADm30SftRRfT5FqZfPmjZoaAAAPjzNZ" /> 
     </m:ParentFolderIds> 
    </m:FindItem> 
</soap:Body> 

我從以前FindFolder操作,其中列出文件夾層次得到了文件夾ID。

如何解決這個問題?

+0

嘿,你有沒有找到任何解決方案。我收到了同樣的錯誤。 :( – Ankush 2016-12-16 09:45:21

回答

0

您需要添加

<t:RequestServerVersion Version="Exchange2007_SP1" /> 

您的標記之間。版本可以是這裏定義的任何版本:EWS schema versions in Exchange

但是,一旦你得到那個過去的錯誤,你會得到另一個試圖請求該項目:TextBody和項目:身體。要獲得消息的正文,您需要發送一個GetItem操作,該操作包含要綁定的項目的ItemId(即get)。

請參閱此頁獲取更多信息:How to: Work with Exchange mailbox items by using EWS

2

我也有同樣的問題。

在標題中添加了RequestServerVersion。這解決了問題。

' <soap:Header>' + 
    ' <RequestServerVersion Version="Exchange2013" xmlns="http://schemas.microsoft.com/exchange/services/2006/types" soap:mustUnderstand="0" />' + 
    ' </soap:Header>' + 
相關問題