【发布时间】:2018-07-06 10:21:51
【问题描述】:
我正在使用邮件工具包发送接收邮件,并管理我数据库中的所有记录。我正在存储特定邮件的所有用户操作,然后使用我的代码执行它。 我将消息 ID 存储在唯一消息的表中,现在我想使用 messageid 获取消息。有什么办法吗?
【问题讨论】:
我正在使用邮件工具包发送接收邮件,并管理我数据库中的所有记录。我正在存储特定邮件的所有用户操作,然后使用我的代码执行它。 我将消息 ID 存储在唯一消息的表中,现在我想使用 messageid 获取消息。有什么办法吗?
【问题讨论】:
首先,不要期望 Message-Id 标头是全局唯一的。任何黑客都可以轻松创建自己的消息并重新使用已知的 Message-Id 来尝试混淆依赖于 Message-Id 唯一性的软件。
也就是说,您需要结合使用 IMailFolder.Search() API 和 SearchQuery.HeaderContains() 来搜索具有特定 Message-Id 标头的消息。
var uids = folder.Search (SearchQuery.HeaderContains ("Message-Id", "blah@blah.com"));
【讨论】: