MimeKit:如何通过MessageId删除电子邮件?

时间:2015-07-15 09:00:18

标签: c# mimekit

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

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

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

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

在我的情况下,我不知道其中任何一方。我所拥有的只是消息本身(MimeMessage)和它的MessageId。

我希望MessageId == UniqueId,但显然事实并非如此。

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

1 个答案:

答案 0 :(得分:10)

您可以尝试这样做:

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

但理想情况下,您可以跟踪用于获取邮件的UniqueId,以便您可以使用该值。