ImapClient를 사용하여 단일 및 다중 이메일 메시지 삭제

메시지 삭제

다음은 ImapClient 클래스는 IMAP 서버에서 메시지를 삭제할 수 있습니다. ImapClient 클래스 DeleteMessage() 함수는 메시지를 삭제하는 데 사용됩니다. 메시지 시퀀스 번호 또는 고유 ID를 매개변수로 받습니다. ImapClient 제공합니다 DeleteMessageDeleteMessages 메시지를 하나씩 또는 여러 개씩 삭제하는 메서드들입니다. 다음 코드 스니펫은 IMAP 서버에서 메시지 ID 1인 이메일을 삭제하는 방법을 보여줍니다.

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

다중 메시지 삭제

메일함에서 여러 이메일을 다음을 사용하여 삭제할 수 있습니다. ImapClient Aspose.Email API의. DeleteMessages 메서드는 고유 ID, 시퀀스 번호 등을 사용하여 서버에서 다수의 메시지를 삭제할 수 있는 여러 옵션을 제공합니다. ImapMessageInfoCollection 요소들. 다음 코드 스니펫은 여러 메시지를 삭제하는 방법을 보여줍니다.

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