Xóa Tin Nhắn Email Đơn và Nhiều với ImapClient

Xóa tin nhắn

Cái ImapClient lớp có thể xóa tin nhắn từ máy chủ IMAP. ImapClient lớp DeleteMessage() hàm được sử dụng để xóa tin nhắn. Nó nhận số thứ tự tin nhắn hoặc ID duy nhất làm tham số. ImapClient cung cấp DeleteMessageDeleteMessages phương thức để xóa tin nhắn từng cái một hoặc nhiều tin nhắn. Đoạn mã mẫu sau cho bạn thấy cách xóa một tin nhắn email có ID tin nhắn 1 từ máy chủ IMAP.

using var client = new ImapClient("host", "username", "password");
client.SecurityOptions = SecurityOptions.SSLImplicit;

// Append test message
client.SelectFolder(ImapFolderInfo.InBox);

var eml = new MailMessage("from@from.com", "to@to.com")
{
  Subject = "Message to delete",
  Body = "Hey! This Message will be deleted!"
};
var emlId = client.AppendMessage(eml);

// Delete appended message
client.DeleteMessage(emlId);
client.CommitDeletes();

Xóa nhiều tin nhắn

Có thể xóa nhiều email khỏi hộp thư bằng cách sử dụng ImapClient của API Aspose.Email. DeleteMessages phương thức cung cấp một số tùy chọn để xóa nhiều tin nhắn từ máy chủ bằng cách sử dụng ID duy nhất, số thứ tự hoặc ImapMessageInfoCollection phần tử. Đoạn mã mẫu sau cho bạn thấy cách xóa nhiều tin nhắn.

using var client = new ImapClient("host", "username", "password");
client.SelectFolder(ImapFolderInfo.InBox);
            
// Append test messages
var emlList = new List<MailMessage>();
{
  var eml = new MailMessage("from@from.com", "to@to.com")
  {
    Subject = $"Message to delete {i}",
    Body = "Hey! This Message will be deleted!"
  };
                
  emlList.Add(eml);
}

var appendMessagesResult = client.AppendMessages(emlList);
            
// Bulk Delete appended Messages
client.DeleteMessages(appendMessagesResult.Succeeded.Values, true);
client.CommitDeletes();