Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/email/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Email 如何在通过EWS发送邮件时获取save to Send copy的ItemId_Email_Office365_Exchangewebservices - Fatal编程技术网

Email 如何在通过EWS发送邮件时获取save to Send copy的ItemId

Email 如何在通过EWS发送邮件时获取save to Send copy的ItemId,email,office365,exchangewebservices,Email,Office365,Exchangewebservices,EWS文档中说,要发送消息并将副本保存到“已发送邮件”文件夹,您应该 公司足球队 你有兴趣加入吗? sadie@contoso.com 成功时,“服务器使用CreateItemResponse消息响应CreateItem请求,该消息包括ResponseCode值NoError(表示电子邮件已成功创建)和新创建消息的ItemId。” 使用针对Office 365的EWS,这几乎可以成功实现。消息已发送,副本将保存到已发送的项目。。。但已保存副本的ItemId在响应中未返回: <m

EWS文档中说,要发送消息并将副本保存到“已发送邮件”文件夹,您应该


公司足球队
你有兴趣加入吗?
sadie@contoso.com 
成功时,“服务器使用CreateItemResponse消息响应CreateItem请求,该消息包括ResponseCode值NoError(表示电子邮件已成功创建)和新创建消息的ItemId。”

使用针对Office 365的EWS,这几乎可以成功实现。消息已发送,副本将保存到已发送的项目。。。但已保存副本的ItemId在响应中未返回:

   <m:CreateItemResponse>
     <m:ResponseMessages>
       <m:CreateItemResponseMessage ResponseClass="Success">
         <m:ResponseCode>NoError</m:ResponseCode>
         <m:Items />
       </m:CreateItemResponseMessage>
     </m:ResponseMessages>
   </m:CreateItemResponse>

无误

是否有方法指示EWS服务器实际返回已保存副本的ItemId?或者,在发送完成后,查找保存副本的首选机制是什么?

显然,文档是错误的或不适用的。符合我的经验:SendAndSaveCopy
CreateItem
请求未返回ItemId。它建议如下:

创建邮件时,只需使用自定义扩展属性标记电子邮件,然后在邮件发送后使用该扩展属性在“已发送邮件”文件夹中查找邮件。

一位评论员建议,与其使用昂贵的
FindItems
-with SearchFilter调用来定位标记为已保存副本的自定义属性,不如执行以下操作:

1。设置扩展道具。

2。对sent items文件夹执行FindItem,不受任何限制,按创建日期降序排序,索引页面视图大约为5。将扩展道具包括在PropertySet中。


3。在结果中迭代查找扩展道具。

我应该注意,我是通过
指定出站消息的。我认为这不会有任何区别。在SOAP头中指定
可能会导致EWS服务返回ItemId。不幸的是,我的EWS客户端库不支持此
RequestServerVersion
值,因此测试此假设可能必须留给下一个人来解决此问题……据我所知,设置
RequestServerVersion
不会改变响应。
   <m:CreateItemResponse>
     <m:ResponseMessages>
       <m:CreateItemResponseMessage ResponseClass="Success">
         <m:ResponseCode>NoError</m:ResponseCode>
         <m:Items />
       </m:CreateItemResponseMessage>
     </m:ResponseMessages>
   </m:CreateItemResponse>