Class MapiDistributionList

MapiDistributionList class

Represents a MAPI distribution list item.

public sealed class MapiDistributionList : MapiMessageItemBase

Constructors

NameDescription
MapiDistributionList()Initializes a new instance of the MapiDistributionList class.
MapiDistributionList(string, MapiDistributionListMemberCollection)Initializes a new instance of the MapiDistributionList class with a name and members.

Properties

NameDescription
Attachments { get; }Gets the attachments of the item.
Billing { get; set; }Gets or sets the billing information of the item.
Body { get; set; }Gets or sets the plain-text body of the item.
BodyHtml { get; }Gets the body of the item as HTML, converted from BodyRtf; an empty string when there is no RTF body.
BodyRtf { get; set; }Gets or sets the body of the item in RTF format.
BodyType { get; }Gets the format of the body: plain text, HTML or RTF.
Categories { get; set; }Gets or sets the categories of the item.
virtual CodePage { get; }Gets the code page of the ANSI strings of the object.
Companies { get; set; }Gets or sets the names of the companies associated with the item.
DisplayName { get; set; }Gets or sets the name of the distribution list.
virtual ItemId { get; }Gets the identifier of the item on the mail server, for items obtained from a server; null otherwise.
Members { get; }Gets the members of the distribution list.
MessageClass { get; set; }Gets or sets the message class of the item, such as IPM.Note for an e-mail message. The class determines the type of the item.
Mileage { get; set; }Gets or sets the mileage information of the item.
NamedProperties { get; }Gets the named properties of the item.
NamedPropertyMapping { get; }Gets the mapping between the named properties and the tags they are stored under.
virtual Properties { get; }Gets all properties of the object.
PropertyStream { get; }Gets the property stream of the item.
Recipients { get; set; }Gets or sets the recipients of the item.
Sensitivity { get; set; }Gets or sets the sensitivity of the item: normal, personal, private or confidential.
Subject { get; set; }Gets or sets the subject of the message.
SubjectPrefix { get; }Gets the prefix of the subject, such as RE: or FW: .
SubStorages { get; }Gets the sub-storages of the item.
SupportedType { get; }Gets the type of the item, as determined by its message class.

Methods

NameDescription
static FromVCF(Stream)Loads a distribution list from a vCard stream that contains the contacts of its members.
static FromVCF(string)Loads a distribution list from a vCard (.vcf) file that contains the contacts of its members.
static Load(Stream)Loads a MapiDistributionList from the specified stream.
static Load(string)Loads a MapiDistributionList from the specified file.
virtual Dispose()Releases the resources used by the item.
override GetProperty(PropertyDescriptor)Gets a MAPI property of the item by its descriptor.
GetPropertyBoolean(long)Gets the value of a property as a Boolean.
GetPropertyBytes(long)Gets the value of a property as bytes.
GetPropertyDateTime(long)Gets the value of a property as a date and time.
GetPropertyInt32(long)Gets the value of a property as a 32-bit integer.
GetPropertyLong(long)Gets the value of a property as a 64-bit integer.
GetPropertyShort(long)Gets the value of a property as a 16-bit integer.
GetPropertyString(long)Gets the value of a property as a string.
GetPropertyString(long, int)Gets the value of a property as a string, decoding an ANSI string with the specified code page.
GetUnderlyingMessage()Retrieves the underlying MapiMessage object.
IsStoreUnicodeOk()Determines whether the string properties of the object are stored in Unicode.
RemoveProperty(long)Removes a property from the item, including its named-property mapping.
Save(Stream)Saves the distribution list to a stream in MSG format.
Save(string)Saves the distribution list to a file in MSG format.
Save(Stream, MapiDistributionListSaveOptions)Saves the distribution list to a stream with the specified options.
Save(string, MapiDistributionListSaveOptions)Saves the distribution list to a file with the specified options.
SaveAsync(Stream, CancellationToken)Saves the specified stream asynchronously.
SaveAsync(string, CancellationToken)Saves the specified file name asynchronously.
SaveAsync(Stream, MapiDistributionListSaveOptions, CancellationToken)Saves the specified stream asynchronously.
SaveAsync(string, MapiDistributionListSaveOptions, CancellationToken)Saves the specified file name asynchronously.
virtual SetBodyContent(string, BodyContentType)Sets the body of the item in the specified format.
virtual SetBodyContent(string, BodyContentType, bool)Sets the body of the item in the specified format, optionally compressing it.
SetBodyRtf(string, bool)Sets the body of the item in RTF format, optionally compressing it.
SetMessageFlags(MapiMessageFlags)Sets the flags of the message, such as read or unsent.
virtual SetProperty(MapiProperty)Adds the property, or replaces the property with the same tag.
override SetProperty(PropertyDescriptor, object)Sets the value of a MAPI property of the item.
TryGetPropertyData(long)Gets the value of a property as bytes.
TryGetPropertyDateTime(long, ref DateTime)Gets the value of a property as a date and time, if the property exists.
TryGetPropertyInt32(long, ref int)Gets the value of a property as a 32-bit integer, if the property exists.
TryGetPropertyLong(long, ref long)Gets the value of a property as a 64-bit integer, if the property exists.
TryGetPropertyString(long)Gets the value of a property as a string.
TryGetPropertyString(long, int)Gets the value of a property as a string, decoding an ANSI string with the specified code page.
TryGetPropertyString(long, ref string)Gets the value of a property as a string, if the property exists.
TryGetPropertyString(long, ref string, int)Gets the value of a property as a string, if the property exists, decoding an ANSI string with the specified code page.
static FromVCFAsync(Stream, CancellationToken)Loads MapiDistributionList from VCF stream asynchronously.
static FromVCFAsync(string, CancellationToken)Loads MapiDistributionList from VCF file asynchronously.
static LoadAsync(Stream, CancellationToken)Loads a MapiDistributionList from the specified stream asynchronously.
static LoadAsync(string, CancellationToken)Loads a MapiDistributionList from the specified file asynchronously.

Remarks

This class serves as a wrapper for MapiMessage to simplify the process of handling distribution list information from MAPI properties. It provides a more intuitive interface for accessing and manipulating distribution list data within the MAPI message.

Examples

The following example demonstrates how to get a MapiDistributionList object from a MapiMessage.

[C#]

var msg = MapiMessage.Load("distributionList.msg");

// Check if the loaded message is a supported distribution list type
if (msg.SupportedType == MapiItemType.DistList)
{
    // Convert the MAPI message to a MapiDistributionList object
    var mapiDistributionList = (MapiDistributionList)msg.ToMapiMessageItem();
    
    // Display some distribution list info
    Console.WriteLine(mapiDistributionList.DisplayName);
    Console.WriteLine(mapiDistributionList.Members.Count);
}

[Visual Basic]

Dim msg = MapiMessage.Load("distributionList.msg")

' Check if the loaded message is a supported distribution list type
If msg.SupportedType = MapiItemType.DistList Then
    ' Convert the MAPI message to a MapiDistributionList object
    Dim mapiDistributionList = DirectCast(msg.ToMapiMessageItem(), MapiDistributionList)
    
    ' Display some distribution list info
    Console.WriteLine(mapiDistributionList.DisplayName)
    Console.WriteLine(mapiDistributionList.Members.Count)
End If

See Also