[英]c# MailKit how to delete an email from mail server (IMAP)
我發現了這一點:
client.Inbox.AddFlags (new int[] { index }, MessageFlags.Deleted);
or
client.Inbox.AddFlags (new UniqueId[] { uid }, MessageFlags.Deleted);
then
client.Inbox.Expunge ();
我不知道如何獲取索引或uid在這里使用。 我的客戶是這樣的:
using (var client = new ImapClient())
{
client.Connect(serverM.Text, Convert.ToInt32(portM.Text), true);
client.AuthenticationMechanisms.Remove("XOAUTH");
client.Authenticate(user.Text, pass.Text);
var inbox = client.GetFolder(inbox.Text);
inbox.Open(FolderAccess.ReadWrite);
var message = inbox.GetMessage(i);
for (int i = 0; i < inbox.Count; i++) //
{
var message = inbox.GetMessage(i);
...
}
}
另外int我不是索引。 message.MessageID不等於UID。 我的錯誤在哪里?
您在這里使用索引:
for (int i = 0; i < inbox.Count; i++) //
{
var message = inbox.GetMessage(i);
...
}
i
是指數。
在MailKit的最新版本中,我添加了以下功能:
inbox.AddFlags (i, MessageFlags.Deleted);
所以現在您不需要這樣做:
inbox.AddFlags (new int[] { i }, MessageFlags.Deleted);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.