6

我正在使用 MailKit/MimeKit 1.2.7(最新的 NuGet 版本)。

使用 ImapClient 删除电子邮件非常简单......

client.Inbox.AddFlags(uniqueId, MessageFlags.Deleted, silent: true);

...如果您知道电子邮件 UniqueId 或其索引。

就我而言,我不知道其中之一。我所拥有的只是消息本身 (MimeMessage) 和它的 MessageId。

我希望 MessageId == UniqueId,但显然情况并非如此。

我是否有机会通过拥有相应的 MimeMessage/MessageId 来删除电子邮件?

4

1 回答 1

10

你可以尝试做这样的事情:

var uids = folder.Search (SearchQuery.HeaderContains ("Message-Id", message.MessageId));
folder.AddFlags (uids, MessageFlags.Deleted, silent: true);

不过,理想情况下,您会跟踪UniqueId用于获取消息的值,以便您可以使用该值。

于 2015-07-15T16:00:56.943 回答