Click or drag to resize
MimeKit

AttachmentCollection Class

A collection of attachments.
Inheritance Hierarchy
SystemObject
  MimeKitAttachmentCollection

Namespace:  MimeKit
Assembly:  MimeKit (in MimeKit.dll) Version: 2.14.0
Syntax
C#
public class AttachmentCollection : IList<MimeEntity>, 
	ICollection<MimeEntity>, IEnumerable<MimeEntity>, IEnumerable

The AttachmentCollection type exposes the following members.

Constructors
  NameDescription
Public methodAttachmentCollection
Initialize a new instance of the AttachmentCollection class.
Public methodAttachmentCollection(Boolean)
Initialize a new instance of the AttachmentCollection class.
Top
Properties
  NameDescription
Public propertyCount
Gets the number of attachments currently in the collection.
Public propertyIsReadOnly
Gets whther or not the collection is read-only.
Public propertyItem
Gets or sets the MimeEntity at the specified index.
Top
Methods
  NameDescription
Public methodCode exampleAdd(String)
Add the specified attachment.
Public methodAdd(MimeEntity)
Add the specified attachment.
Public methodAdd(String, ContentType)
Add the specified attachment.
Public methodAdd(String, Byte)
Add the specified attachment.
Public methodAdd(String, Stream)
Add the specified attachment.
Public methodAdd(String, Byte, ContentType)
Add the specified attachment.
Public methodAdd(String, Stream, ContentType)
Add the specified attachment.
Public methodAddAsync(String, CancellationToken)
Asynchronously add the specified attachment.
Public methodAddAsync(String, ContentType, CancellationToken)
Asynchronously add the specified attachment.
Public methodAddAsync(String, Stream, CancellationToken)
Asynchronously add the specified attachment.
Public methodAddAsync(String, Stream, ContentType, CancellationToken)
Asynchronously add the specified attachment.
Public methodClear
Clears the attachment collection.
Public methodContains
Checks if the collection contains the specified attachment.
Public methodCopyTo
Copies all of the attachments in the collection to the specified array.
Public methodEquals
Determines whether the specified object is equal to the current object.
(Inherited from Object.)
Protected methodFinalize
Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.
(Inherited from Object.)
Public methodGetEnumerator
Gets an enumerator for the list of attachments.
Public methodGetHashCode
Serves as the default hash function.
(Inherited from Object.)
Public methodGetType
Gets the Type of the current instance.
(Inherited from Object.)
Public methodIndexOf
Gets the index of the requested attachment, if it exists.
Public methodInsert
Inserts the specified attachment at the given index.
Protected methodMemberwiseClone
Creates a shallow copy of the current Object.
(Inherited from Object.)
Public methodRemove
Removes the specified attachment.
Public methodRemoveAt
Removes the attachment at the specified index.
Public methodToString
Returns a string that represents the current object.
(Inherited from Object.)
Top
Remarks
The AttachmentCollection is only used when building a message body with a BodyBuilder.
Examples
C#
            var message = new MimeMessage ();
            message.From.Add (new MailboxAddress ("Joey", "joey@friends.com"));
            message.To.Add (new MailboxAddress ("Alice", "alice@wonderland.com"));
            message.Subject = "How you doin?";

            var builder = new BodyBuilder ();

            // Set the plain-text version of the message text
            builder.TextBody = @"Hey Alice,

What are you up to this weekend? Monica is throwing one of her parties on
Saturday and I was hoping you could make it.

Will you be my +1?

-- Joey
";

            // In order to reference selfie.jpg from the html text, we'll need to add it
            // to builder.LinkedResources and then use its Content-Id value in the img src.
            var image = builder.LinkedResources.Add (@"C:\Users\Joey\Documents\Selfies\selfie.jpg");
            image.ContentId = MimeUtils.GenerateMessageId ();

            // Set the html version of the message text
            builder.HtmlBody = string.Format (@"<p>Hey Alice,<br>
<p>What are you up to this weekend? Monica is throwing one of her parties on
Saturday and I was hoping you could make it.<br>
<p>Will you be my +1?<br>
<p>-- Joey<br>
<center><img src=""cid:{0}""></center>", image.ContentId);

            // We may also want to attach a calendar event for Monica's party...
            builder.Attachments.Add (@"C:\Users\Joey\Documents\party.ics");

            // Now we just need to set the message body and we're done
            message.Body = builder.ToMessageBody ();
See Also