gpt4 book ai didi

.net - 使用 Exchange Web Services 2007 将电子邮件标记为已读

转载 作者:行者123 更新时间:2023-12-02 03:55:15 25 4
gpt4 key购买 nike

我订阅了一个使用 Exchange Web Services 2007 的电子邮件帐户,并在收到新电子邮件时处理附件。我想在处理完这些电子邮件后在服务器上将它们标记为“已读”,但我发现它并不像将“IsRead”属性设置为true那么简单。我什至尝试过以下方法:

Dim msg As EmailMessage
msg.Load(New PropertySet({EmailMessageSchema.IsRead}))
msg.IsRead = True

在发现如果我想与消息的某些部分(如附件)交互时,我必须加载特定的架构属性后,我尝试了此操作。我还尝试直接将消息绑定(bind)到新对象并加载其他属性:

Dim iID as ItemId = msg.Id
Dim tmpMsg as EmailMessage = EmailMessage.Bind(service, iID, New PropertySet(BasePropertySet.FirstClassProperties, EmailMessageSchema.IsRead))
tmpMsg.IsRead = True

我运气不好。我用谷歌搜索发现one MSDN blog example这看起来应该可行,但他有一些我似乎找不到的类(例如 Microsoft.Exchange.WebServices.SetItemFieldType 类;我在 WebServices 命名空间中拥有的只是 DataAutoDiscover 命名空间,没有类(class)或任何东西)。由于我找不到这些类(class)或类似的东西,我有点陷入困境。他还列出了一个 DAV 示例,但他的代码再次使用了我在我的 EWS dll 版本(14.0.0.0)中找不到的类。我尝试从 Microsoft 下载最新的 API,但这似乎与我已有的版本相同。

所以我的问题是,有没有办法使用 Exchange 2007 Web 服务将项目标记为已读?

最佳答案

您需要调用 tmpMsg.Update 方法将更改保留回服务器。

关于.net - 使用 Exchange Web Services 2007 将电子邮件标记为已读,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6845839/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com