如何通过EWS SOAP请求阅读文件夹关联信息(FAI)

时间:2015-08-10 14:30:27

标签: soap exchangewebservices

我必须通过EWS SOAP请求来维护FAI(文件夹相关信息)。

所以我已经开始尝试,尝试使用CategoryList作为示例读取它们(所以通过GetUserConfiguration调用)。

但我没有成功。从我左右阅读的内容来看,FAI与文件夹一起存储,我可以阅读“隐藏”字样。使用带遍历的FindItem的项目="关联"。
此外,Exchange 2007中没有几项功能,所以我从2010年开始。

我可以看到CategoryList存在:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:typ="http://schemas.microsoft.com/exchange/services/2006/types" xmlns:mes="http://schemas.microsoft.com/exchange/services/2006/messages">
   <soapenv:Header>
      <typ:RequestServerVersion Version="Exchange2010"/>
   </soapenv:Header>
   <soapenv:Body>
    <mes:FindItem Traversal="Associated">
      <mes:ItemShape>
        <typ:BaseShape>AllProperties</typ:BaseShape>
      </mes:ItemShape>
      <mes:IndexedPageItemView BasePoint="Beginning" MaxEntriesReturned="100" Offset="0"/>
      <mes:ParentFolderIds>
        <!--typ:DistinguishedFolderId Id="root"/-->
        <!--typ:DistinguishedFolderId Id="inbox"/-->
        <typ:DistinguishedFolderId Id="calendar"/>
      </mes:ParentFolderIds>
    </mes:FindItem>
   </soapenv:Body>
</soapenv:Envelope>

(所以我在阅读尊贵的文件夹&#39;日历&#39;在这个例子中)
这是回复:

<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
   <s:Header>
      <h:ServerVersionInfo MajorVersion="15" MinorVersion="0" MajorBuildNumber="1104" MinorBuildNumber="3" Version="V2_22" xmlns:h="http://schemas.microsoft.com/exchange/services/2006/types" xmlns="http://schemas.microsoft.com/exchange/services/2006/types" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
   </s:Header>
   <s:Body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
      <m:FindItemResponse xmlns:m="http://schemas.microsoft.com/exchange/services/2006/messages" xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types">
         <m:ResponseMessages>
            <m:FindItemResponseMessage ResponseClass="Success">
               <m:ResponseCode>NoError</m:ResponseCode>
               <m:RootFolder IndexedPagingOffset="2" TotalItemsInView="2" IncludesLastItemInRange="true">
                  <t:Items>
                     <t:Message>
                        <t:ItemId Id="AQMk [snip] AATj"/>
                        <t:ParentFolderId Id="AQMk [snip] AA=="/>
                        <t:ItemClass>IPM.Configuration.CategoryList</t:ItemClass>
                        <t:Sensitivity>Normal</t:Sensitivity>
                        <t:DateTimeReceived>2015-08-06T14:28:25Z</t:DateTimeReceived>
                        <t:Size>4020</t:Size>
                        <t:Importance>Normal</t:Importance>
                        <t:IsSubmitted>false</t:IsSubmitted>
                        <t:IsDraft>true</t:IsDraft>
                        <t:IsFromMe>false</t:IsFromMe>
                        <t:IsResend>false</t:IsResend>
                        <t:IsUnmodified>false</t:IsUnmodified>
                        <t:DateTimeSent>2015-08-06T14:28:25Z</t:DateTimeSent>
                        <t:DateTimeCreated>2015-08-06T14:28:25Z</t:DateTimeCreated>
                        <t:DisplayCc/>
                        <t:DisplayTo/>
                        <t:HasAttachments>false</t:HasAttachments>
                        <t:Culture>en-US</t:Culture>
                        <t:EffectiveRights>
                           <t:CreateAssociated>false</t:CreateAssociated>
                           <t:CreateContents>false</t:CreateContents>
                           <t:CreateHierarchy>false</t:CreateHierarchy>
                           <t:Delete>true</t:Delete>
                           <t:Modify>true</t:Modify>
                           <t:Read>true</t:Read>
                        </t:EffectiveRights>
                        <t:LastModifiedName>Wendy Bakkertje</t:LastModifiedName>
                        <t:LastModifiedTime>2015-08-06T14:28:25Z</t:LastModifiedTime>
                        <t:IsAssociated>true</t:IsAssociated>
                        <t:ConversationId Id="AAQk [snip] Qn4="/>
                     </t:Message>
                     <t:Message>
                        <t:ItemId Id="AQMk [snip] AATh"/>
                        <t:ParentFolderId Id="AQMk [snip] AA=="/>
                        <t:ItemClass>IPM.Configuration.WorkHours</t:ItemClass>
                        <t:Sensitivity>Normal</t:Sensitivity>
                        <t:DateTimeReceived>2015-08-06T14:28:24Z</t:DateTimeReceived>
                        <t:Size>1879</t:Size>
                        <t:Importance>Normal</t:Importance>
                        <t:IsSubmitted>false</t:IsSubmitted>
                        <t:IsDraft>true</t:IsDraft>
                        <t:IsFromMe>false</t:IsFromMe>
                        <t:IsResend>false</t:IsResend>
                        <t:IsUnmodified>false</t:IsUnmodified>
                        <t:DateTimeSent>2015-08-06T14:28:24Z</t:DateTimeSent>
                        <t:DateTimeCreated>2015-08-06T14:28:24Z</t:DateTimeCreated>
                        <t:DisplayCc/>
                        <t:DisplayTo/>
                        <t:HasAttachments>false</t:HasAttachments>
                        <t:Culture>nl-NL</t:Culture>
                        <t:EffectiveRights>
                           <t:CreateAssociated>false</t:CreateAssociated>
                           <t:CreateContents>false</t:CreateContents>
                           <t:CreateHierarchy>false</t:CreateHierarchy>
                           <t:Delete>true</t:Delete>
                           <t:Modify>true</t:Modify>
                           <t:Read>true</t:Read>
                        </t:EffectiveRights>
                        <t:LastModifiedName>Wendy Bakkertje</t:LastModifiedName>
                        <t:LastModifiedTime>2015-08-06T14:28:24Z</t:LastModifiedTime>
                        <t:IsAssociated>true</t:IsAssociated>
                        <t:ConversationId Id="AAQk [snip] Qn4="/>
                     </t:Message>
                  </t:Items>
               </m:RootFolder>
            </m:FindItemResponseMessage>
         </m:ResponseMessages>
      </m:FindItemResponse>
   </s:Body>
</s:Envelope>

但是现在,如何通过此路径获取IPM.Configuration.CategoryList 内容

欢迎接下来步骤的任何提示:
- 如何创建自己的固定资产投资清单?
- 如何将我的(日历)项目与此列表中的条目相关联?

1 个答案:

答案 0 :(得分:-1)

我不完全确定这会有所帮助,但您可能想要查看Henning Krauses [']在MasterCategoryList上的工作以了解更多相关信息。可在此链接下载,或搜索MasterCategoryList。

http://www.infinitec.de/post/2011/07/28/Working-with-the-Master-Category-List%E2%80%93EWS-edition.aspx

我根据他的工作制作了一个cmdlet来添加类别,但您可以轻松地将代码放在不同的方向上。 (对不起,我不能在这里分享这些代码。)