我正在使用MailKit/MimeKit 1.2.7(最新的NuGet版本).
使用ImapClient删除电子邮件非常简单......
client.Inbox.AddFlags(uniqueId, MessageFlags.Deleted, silent: true);
Run Code Online (Sandbox Code Playgroud)
...如果您知道电子邮件UniqueId或其索引.
就我而言,我不知道其中任何一方.我所拥有的只是消息本身(MimeMessage)和它的MessageId.
我希望MessageId == UniqueId,但显然事实并非如此.
我是否有机会通过拥有相应的MimeMessage/MessageId来删除电子邮件?
jst*_*ast 10
你可以尝试做这样的事情:
var uids = folder.Search (SearchQuery.HeaderContains ("Message-Id", message.MessageId));
folder.AddFlags (uids, MessageFlags.Deleted, silent: true);
Run Code Online (Sandbox Code Playgroud)
但是,理想情况下,您将跟踪UniqueId用于获取消息的内容,以便您可以使用该值.