exchange-server - 如何使用 EWS 确定 Exchange 中项目的 "deleted on"日期?

标签 exchange-server exchangewebservices

我已经使用托管 Exchange Web 服务 (EWS) 编写了一个 C# 程序来查询 Exchange 2010 中的用户邮箱。

我们需要能够查看不同用户的可恢复项目,并查看每个用户在特定时间范围内删除了多少项目。我已经能够查询 WellKnownFolderName.RecoverableItemsDeletions 文件夹并获取项目,但我找不到任何表明项目何时被删除的属性。 (Outlook GUI 显示此日期,所以我知道该属性必须存储在某处。)

没有看起来像“DateDeleted”或任何接近的标准属性。我试图查看是否为这些项目定义了扩展的 MAPI 属性 PR_DELETED_ON,但要么不是,要么我没有正确查询它。

我如何知道这些项目是何时被删除的?

-标记

最佳答案

正如您所说,应该是一个名为 PR_DELETED_ON 的扩展 MAPI 属性。当一个项目从 Deleted Items 文件夹中永久删除时设置,但是,我自己也从未遇到过这个属性。

相反,查看已删除项目的值 PR_LAST_MODIFICATION_TIME属性 ( 0x30080040 )。此属性存储 PT_SYSTIME反射(reflect)项目上次修改日期和时间的值。此属性会在删除项目时更新,因此您应该能够将其用作有关项目何时删除的指示器。

你说你正在使用 RecoverableItemsDeletions枚举值。这指向删除 收件箱下方的子文件夹 可回收元素 文件夹。这是从 中删除的项目的去向已删除的项目 文件夹。因此,请注意 PR_LAST_MODIFICATION_TIME 的值在该文件夹中找到的任何项目的属性将反射(reflect)该项目从 中删除的日期和时间。已删除的项目 文件夹(除非用户软删除了它)。

关于exchange-server - 如何使用 EWS 确定 Exchange 中项目的 "deleted on"日期?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7474402/

相关文章:

.net - 使用 Exchange Web 服务 (EWS) 托管 API 为其他用户创建任务

邮件服务器重新启动后 PHPMailer 不起作用

java - 是否可以使用 Office 365 电子邮件的 Java Exchange 服务 API 将组成员添加到组中?

web-services - Grails:不同格式的RESTful Web服务数据处理

c# - 将新联系人添加到现有联系人组 ews api

C# smtpclient.send 开发速度非常慢,但生产速度很快

c# - 在 C# 中连接到 Microsoft Exchange PowerShell

powershell - 在Exchange联系人中查找附件的CID引用

c# - 如何触发订阅错误以测试 exchange web 服务的恢复

exchangewebservices - 多个 PushNotification 订阅有些可以正常工作,有些则不能