我想在IMAP4服务上搜索和删除带有ActiveUp.Net.Mail
库的邮件。如果我知道MessageId,我不知道如何从ActiveUp.Net.Mail.Message
获取UID或如何使用所选文件夹搜索邮箱。
当然我之前已经收到了消息,所以我知道它是MessageId
。
最诚挚的问候。
答案 0 :(得分:1)
我知道为时已晚,但是今天我遇到了同样的问题,因此,也许还有其他人在寻找答案。这是对我有用的解决方案:
// Select the Mailbox you want to query
Mailbox Inbox = _client.SelectMailbox("Inbox");
for (int x=Inbox.MessageCount; x>0; x--)
{
Message email = Inbox.Fetch.MessageObject(x);
ProcessEmail(email, x);
}
基本上,messageOrdinal是邮件的索引(例如:gmail收件箱中的位置),但是您必须自己保留引用,因为ActiveUp.Net.Mail.Message将不提供任何检索它的功能。
在ProcessEmail
函数中,您将收到messageOrdinal
作为输入参数:
public void ProcessEmail(Message email, int messageOrdinal)
{
//...
}