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

如何通过EWS SOAP请求读取文件夹关联信息(FAI),soap,exchangewebservices,Soap,Exchangewebservices,我必须通过EWS SOAP请求去维护FAI(文件夹关联信息) 因此,我开始尝试,尝试以CategoryList为例来阅读它们(因此而不是通过GetUserConfiguration调用) 但我没有成功。从我左右阅读的内容来看,FAI与文件夹一起存储,我可以使用FindItem和Traversal=“Associated”读取“隐藏”项目。 另外,Exchange2007中有几项功能不可用,因此我从2010开始 我可以看到CategoryList存在于: <soapenv:Envelope

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

因此,我开始尝试,尝试以CategoryList为例来阅读它们(因此而不是通过GetUserConfiguration调用)

但我没有成功。从我左右阅读的内容来看,FAI与文件夹一起存储,我可以使用FindItem和Traversal=“Associated”读取“隐藏”项目。
另外,Exchange2007中有几项功能不可用,因此我从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>

所有属性
(所以我正在阅读本例中的杰出文件夹“calendar”)
以下是回应:

<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
正常的
2015-08-06T14:28:25Z
4020
正常的
假的
真的
假的
假的
假的
2015-08-06T14:28:25Z
2015-08-06T14:28:25Z
假的
恩美
假的
假的
假的
真的
真的
真的
温迪·巴克特杰
2015-08-06T14:28:25Z
真的
IPM.Configuration.WorkHours
正常的
2015-08-06T14:28:24Z
1879
正常的
假的
真的
假的
假的
假的
2015-08-06T14:28:24Z
2015-08-06T14:28:24Z
假的
荷兰语
假的
假的
假的
真的
真的
真的
温迪·巴克特杰
2015-08-06T14:28:24Z
真的
但是现在,如何通过此路径获取IPM.Configuration.CategoryList内容

欢迎对下一步的任何提示:
-如何创建自己的FAI列表?

-如何将我的(日历)项目与此列表中的条目相关联?

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


我根据他的工作开发了一个cmdlet来添加类别,但您也可以轻松地将代码带到不同的方向。(很抱歉,我不能在这里分享该代码。)

如果您对某个答案或评论投了反对票,那么留下一个理由让我们了解您的挑剔方法如何?我想有人对此投了反对票,因为它链接到托管API代码,我的问题是SOAP调用。另外,由于你没有提供一个真正的答案(我不能完全肯定这会有帮助),这更多的是一个评论而不是一个答案。那么,在这种情况下,投票人在EWS上是不知情的。EWS是HTTP/S上的Soap,托管API代表客户机编写XML/Soap,管理连接等。问题是“我如何获得分类列表内容…”,这是克劳斯先生的工作。如果你发现了,你能分享解决方案吗?Thanks@YohanChung我一直没有找到解决办法,就把费斯扔到了一起