Click or drag to resize
MimeKit

BodyBuilder Class

A message body builder.
Inheritance Hierarchy
SystemObject
  MimeKitBodyBuilder

Namespace:  MimeKit
Assembly:  MimeKit (in MimeKit.dll) Version: 2.1.0.0
Syntax
C#
public class BodyBuilder

The BodyBuilder type exposes the following members.

Constructors
  NameDescription
Public methodCode exampleBodyBuilder
Initializes a new instance of the BodyBuilder class.
Top
Properties
  NameDescription
Public propertyCode exampleAttachments
Gets the attachments.
Public propertyCode exampleHtmlBody
Gets or sets the html body.
Public propertyCode exampleLinkedResources
Gets the linked resources.
Public propertyCode exampleTextBody
Gets or sets the text body.
Top
Methods
  NameDescription
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 methodGetHashCode
Serves as the default hash function.
(Inherited from Object.)
Public methodGetType
Gets the Type of the current instance.
(Inherited from Object.)
Protected methodMemberwiseClone
Creates a shallow copy of the current Object.
(Inherited from Object.)
Public methodCode exampleToMessageBody
Constructs the message body based on the text-based bodies, the linked resources, and the attachments.
Public methodToString
Returns a string that represents the current object.
(Inherited from Object.)
Top
Remarks
BodyBuilder is a helper class for building common MIME body structures.
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