Verwijder enkele en meerdere e‑mailberichten met ImapClient

Berichten verwijderen

De ImapClient klasse kan berichten verwijderen van een IMAP-server. De ImapClient klasse DeleteMessage() functie wordt gebruikt om berichten te verwijderen. Het neemt het berichtvolgnummer of unieke ID als parameter. De ImapClient biedt DeleteMessage en DeleteMessages methoden voor het verwijderen van berichten één voor één of meerdere. Het volgende codefragment laat zien hoe u een e-mailbericht met bericht-ID 1 van een IMAP-server kunt verwijderen.

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();

Meerdere berichten verwijderen

Meerdere e-mails kunnen uit de mailbox worden verwijderd met de ImapClient van de Aspose.Email API. De DeleteMessages methode biedt een aantal opties om meerdere berichten van de server te verwijderen met unieke ID’s, volgordenummers of ImapMessageInfoCollection elementen. De volgende codefragment toont hoe u meerdere berichten kunt verwijderen.

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();