Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save aspose-com-gists/736ed7a3971410f00d272e3e04e606f1 to your computer and use it in GitHub Desktop.
Save aspose-com-gists/736ed7a3971410f00d272e3e04e606f1 to your computer and use it in GitHub Desktop.
Create and Read MS Outlook Distribution Lists in C# .NET
string displayName1 = "Sebastian Wright";
string email1 = "SebastianWright@dayrep.com";
string displayName2 = "Wichert Kroos";
string email2 = "WichertKroos@teleworm.us";
string strEntryId1;
string strEntryId2;
// Create distribution list from contacts
using (PersonalStorage personalStorage = PersonalStorage.Create("list.pst", FileFormatVersion.Unicode))
{
// Add the contact folder to PST
Aspose.Email.Storage.Pst.FolderInfo contactFolder = personalStorage.CreatePredefinedFolder("Contacts", StandardIpmFolder.Contacts);
// Create contacts
strEntryId1 = contactFolder.AddMapiMessageItem(new MapiContact(displayName1, email1));
strEntryId2 = contactFolder.AddMapiMessageItem(new MapiContact(displayName2, email2));
// Create a collection to keep members
MapiDistributionListMember member1 = new MapiDistributionListMember(displayName1, email1);
member1.EntryIdType = MapiDistributionListEntryIdType.Contact;
member1.EntryId = Convert.FromBase64String(strEntryId1);
MapiDistributionListMember member2 = new MapiDistributionListMember(displayName2, email2);
member2.EntryIdType = MapiDistributionListEntryIdType.Contact;
member2.EntryId = Convert.FromBase64String(strEntryId1);
// Add members to collection
MapiDistributionListMemberCollection members = new MapiDistributionListMemberCollection();
members.Add(member1);
members.Add(member2);
// Create list
MapiDistributionList distributionList = new MapiDistributionList("Contact list", members);
distributionList.Body = "Distribution List Body";
distributionList.Subject = "Sample Distribution List using Aspose.Email";
// Add distribution list to PST
contactFolder.AddMapiMessageItem(distributionList);
}
// Load PST file
MapiMessage message = MapiMessage.Load("list.pst");
// Fetch distribution list
MapiDistributionList dlist = (MapiDistributionList)message.ToMapiMessageItem();
// Get members collection
MapiDistributionListMemberCollection members = dlist.Members;
// Read each MapiDistributionListMember from collection
MapiDistributionListMember member1 = members[0];
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment