Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/258.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
C# Exchange Web Service 2010中未同步来自已发送邮件文件夹的邮件_C#_Exchange Server_Exchangewebservices - Fatal编程技术网

C# Exchange Web Service 2010中未同步来自已发送邮件文件夹的邮件

C# Exchange Web Service 2010中未同步来自已发送邮件文件夹的邮件,c#,exchange-server,exchangewebservices,C#,Exchange Server,Exchangewebservices,我们使用EWS API(2010)的用法:SubscribeToPullNotifications(FolderIDs,300,CurrentWatermark,EventType.NewMail)将来自exchange帐户的电子邮件读取到我们的程序中。但是,即使发送给每个文件夹的文件夹ID是唯一的,但当收到电子邮件事件时,我只从所有文件夹(sent Items文件夹除外)获取事件 我正在使用的完整流程: 初始同步:所有文件夹[包括已发送邮件])与其邮件同步。此信息存储到数据库中 后续同步:发

我们使用EWS API(2010)的用法:SubscribeToPullNotifications(FolderIDs,300,CurrentWatermark,EventType.NewMail)将来自exchange帐户的电子邮件读取到我们的程序中。但是,即使发送给每个文件夹的文件夹ID是唯一的,但当收到电子邮件事件时,我只从所有文件夹(sent Items文件夹除外)获取事件

我正在使用的完整流程:

  • 初始同步:所有文件夹[包括已发送邮件])与其邮件同步。此信息存储到数据库中
  • 后续同步:发送唯一的文件夹ID以及接收到的水印,用于接收下一批/更新的邮件。(这不提供已发送邮件文件夹邮件)

有人面对过这个问题吗?。我是否需要执行任何额外的步骤来确保“已发送邮件”文件夹也同步,并在中接收邮件。

您订阅EventType.NewMail事件只有当新邮件发送到收件箱时,此事件才会发生。当某人发送电子邮件时,该电子邮件的副本将保存到SentItems文件夹,但这不会触发NewMail事件,因为这不是传递,只是创建,因此您还需要侦听EventType.Created以拾取添加到SendItems文件夹的新电子邮件

一个很好的测试工具是EWS编辑器,它可以让您订阅所有事件,然后您可以准确地看到在邮箱上执行操作时发生的事件,而无需编写任何代码

干杯
Glen

您确信“已发送邮件”文件夹在初始同步和后续同步之间确实发生了更改吗?