Управление списками рассылки в PST‑файлах
Contents
[
Hide
]
Создание и управление списками рассылки
Создать и сохранить списки рассылки
Можно создать список рассылки с помощью Aspose.Email API, представляющий собой коллекцию нескольких контактов. Список рассылки можно сохранить на диск в формате Outlook MSG и просматривать/обрабатывать, открыв его в MS Outlook. Ниже приведён фрагмент кода, показывающий, как создать и сохранить список рассылки.
Чтение списков рассылки
Следующий фрагмент кода показывает, как прочитать список рассылки из PST.
using Aspose.Email.Storage.Pst;
using Aspose.Email.Mapi;
// Load the PST file
using (var pst = PersonalStorage.FromFile("your.pst"))
{
// Get the Contacts folder
var folder = pst.GetPredefinedFolder(StandardIpmFolder.Contacts);
if (folder != null)
{
foreach (var msgInfo in folder.EnumerateMessages())
{
// Check if the message has the "IPM.DistList" message class
if (msgInfo.MessageClass == "IPM.DistList")
{
// Extract the distribution list
var distList = (MapiDistributionList)pst.ExtractMessage(msgInfo).ToMapiMessageItem();
// Now, you can work with the distribution list
// (e.g., access its members, display its properties, or make modifications)
}
}
}
}
Обновление списков рассылки
Ниже приведён фрагмент кода, показывающий, как обновить список рассылки в PST.
using Aspose.Email.Mapi;
using Aspose.Email.Storage.Pst;
// Load PST file
using (PersonalStorage pst = PersonalStorage.FromFile("my.pst"))
{
// Get Contacts folder
var folder = pst.GetPredefinedFolder(StandardIpmFolder.Contacts);
// Add a new member to each distribution list in PST
foreach (var msg in folder.EnumerateMessages())
{
// Check if the message has the "IPM.DistList" message class
if (msg.MessageClass == "IPM.DistList")
{
var distList = pst.ExtractMessage(msg).ToMapiMessageItem();
// Create a new member to add
var member = new MapiDistributionListMember("Edward R. Manuel", "EdwardRManuel@example.com");
distList.Members.Add(member);
// Update Distribution List in PST
folder.UpdateMessage(msg.EntryIdString, distList);
}
}
}