1

我正在使用 IMAP 和 MailSystem.NET 在 c# 中阅读电子邮件。如何按消息 ID 搜索电子邮件?(msg.MessageId)

 using (Imap4Client imap = new Imap4Client()){
        imap.ConnectSsl(protocol, port);
        imap.LoginFast(email, password);

        Mailbox inbox = imap.SelectMailbox("INBOX");

        int[] mails= inbox.Search("UNSEEN");

        for (int i = 0; i < mailsUnread.Length; i++) {
            Message msg = inbox.Fetch.MessageObject(mailsUnread[i]);
            string subject = msg.Subject;
           string body = msg.BodyText.Text;

           string messageId= msg.MessageId; 

         }
 }

谢谢

4

1 回答 1

1

我强烈建议使用MailKit,因为它是一个比 MailSystem.NET 更强大的 IMAP 客户端库......但是......

根据 MailSystem.NET 中的 Message-Id 标头搜索消息的方式是:

int[] mails = inbox.Search (string.Format ("HEADER \"MESSAGE-ID\" \"{0}\"", msg.MessageId));

希望有帮助。

于 2014-07-30T15:49:34.283 回答