Удаление сообщений с сервера
Удаление сообщений
Класс ImapClient может удалять сообщения с IMAP-сервера. Функция DeleteMessage() класса ImapClient используется для удаления сообщений. Она принимает номер последовательности сообщения или уникальный ID в качестве параметра. Класс ImapClient предоставляет методы DeleteMessage и DeleteMessages для удаления сообщений по одному или несколько одновременно. Следующий код показывает, как удалить электронное сообщение с ID сообщения 1 с IMAP-сервера.
using var client = new ImapClient("host", "username", "password");
client.SecurityOptions = SecurityOptions.SSLImplicit;
// Добавление тестового сообщения
client.SelectFolder(ImapFolderInfo.InBox);
var eml = new MailMessage("from@from.com", "to@to.com")
{
Subject = "Сообщение для удаления",
Body = "Привет! Это сообщение будет удалено!"
};
var emlId = client.AppendMessage(eml);
// Удаление добавленного сообщения
client.DeleteMessage(emlId);
client.CommitDeletes();
Удаление нескольких сообщений
Несколько электронных писем можно удалить из почтового ящика с помощью ImapClient API Aspose.Email. Метод DeleteMessages предлагает ряд вариантов для удаления нескольких сообщений с сервера, используя уникальные идентификаторы, номера последовательностей или элементы ImapMessageInfoCollection. Следующий код показывает, как удалить несколько сообщений.
using var client = new ImapClient("host", "username", "password");
client.SelectFolder(ImapFolderInfo.InBox);
// Добавление тестовых сообщений
var emlList = new List<MailMessage>();
{
var eml = new MailMessage("from@from.com", "to@to.com")
{
Subject = $"Сообщение для удаления {i}",
Body = "Привет! Это сообщение будет удалено!"
};
emlList.Add(eml);
}
var appendMessagesResult = client.AppendMessages(emlList);
// Массовое удаление добавленных сообщений
client.DeleteMessages(appendMessagesResult.Succeeded.Values, true);
client.CommitDeletes();