C# 查找MessagesRived event MailKit的新电子邮件
如何使用MailKit获取触发MessagesRived事件的新电子邮件 在我看到之后,我得到了一个发送者作为IMailFolder和e作为MessagesArrivedEventArgs。C# 查找MessagesRived event MailKit的新电子邮件,c#,mailkit,C#,Mailkit,如何使用MailKit获取触发MessagesRived事件的新电子邮件 在我看到之后,我得到了一个发送者作为IMailFolder和e作为MessagesArrivedEventArgs。 我在e.Count中看到的唯一一件事就是e.Count,它告诉我我估计已经收到了多少封新闻邮件。我想要的是收到的MIMessage格式的电子邮件。您需要做的是存储e.Count值。完成当前命令(client.Idle()?folder.Fetch()?等)后,您将需要: 调用folder.Fetch(fol
我在e.Count中看到的唯一一件事就是e.Count,它告诉我我估计已经收到了多少封新闻邮件。我想要的是收到的MIMessage格式的电子邮件。您需要做的是存储e.Count值。完成当前命令(client.Idle()?folder.Fetch()?等)后,您将需要:
folder.Fetch(folder.Count-Count,-1,MessageSummaryItems.UniqueId)
获取添加到文件夹中的最新邮件folder.Search(SearchQuery.Recent)
,这将只提供您以前未查看过的新邮件folder.GetMessage(UID)
以MimeMessage形式获取消息
注意:从技术上讲,每当IMAP服务器向客户端发送一个EXISTS事件(其中文件夹中的消息数量增加)时,就会发出MessagesRived事件。由于e.Count值的计算方式为NewMessageCount-oldsessagecount
,因此它实际上可能具有误导性,因为您可能遇到以下情况: