Elimina Messaggi Email Singoli e Multipli con ImapClient

Eliminazione dei messaggi

Il ImapClient La classe può eliminare messaggi da un server IMAP. Il ImapClient classe DeleteMessage() La funzione viene usata per eliminare i messaggi. Accetta il numero di sequenza del messaggio o l’ID unico come parametro. Il ImapClient fornisce DeleteMessage e DeleteMessages metodi per eliminare i messaggi uno per uno o in blocco. Il seguente frammento di codice mostra come eliminare un messaggio email con ID 1 da un server 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();

Cancellazione di più messaggi

Più email possono essere eliminate dalla casella di posta usando il ImapClient dell’API Aspose.Email. Il DeleteMessages Il metodo offre diverse opzioni per eliminare più messaggi dal server usando ID unici, numeri di sequenza o ImapMessageInfoCollection elementi. Il seguente frammento di codice mostra come eliminare più messaggi.

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