Click or drag to resize
MimeKit

MimePart Class

A leaf-node MIME part that contains content such as the message body text or an attachment.
Inheritance Hierarchy
SystemObject
  MimeKitMimeEntity
    MimeKitMimePart
      More

Namespace: MimeKit
Assembly: MimeKit (in MimeKit.dll) Version: 4.3.0
Syntax
C#
public class MimePart : MimeEntity

The MimePart type exposes the following members.

Constructors
 NameDescription
Public methodMimePart Initialize a new instance of the MimePart class with the default Content-Type of application/octet-stream.
Public methodMimePart(ContentType) Initialize a new instance of the MimePart class with the specified content type.
Public methodMimePart(MimeEntityConstructorArgs) Initialize a new instance of the MimePart class based on the MimeEntityConstructorArgs.
Public methodMimePart(String) Initialize a new instance of the MimePart class with the specified content type.
Public methodMimePart(String, String) Initialize a new instance of the MimePart class with the specified media type and subtype.
Public methodMimePart(String, String, Object) Initialize a new instance of the MimePart class with the specified media type and subtype.
Top
Properties
 NameDescription
Public propertyCode exampleContent Get or set the MIME content.
Public propertyContentBase Get or set the base content URI.
(Inherited from MimeEntity)
Public propertyContentDescription Get or set the description of the content if available.
Public propertyContentDisposition Get or set the content disposition.
(Inherited from MimeEntity)
Public propertyContentDuration Get or set the duration of the content if available.
Public propertyContentId Get or set the Content-Id.
(Inherited from MimeEntity)
Public propertyContentLocation Get or set the content location.
(Inherited from MimeEntity)
Public propertyContentMd5 Get or set the md5sum of the content.
Public propertyContentTransferEncoding Get or set the content transfer encoding.
Public propertyContentType Get the type of the content.
(Inherited from MimeEntity)
Public propertyCode exampleFileName Get or set the name of the file.
Public propertyHeaders Get the list of headers.
(Inherited from MimeEntity)
Public propertyIsAttachment Get a value indicating whether this MimePart is an attachment.
(Inherited from MimeEntity)
Top
Methods
 NameDescription
Public methodAccept Dispatches to the specific visit method for this MIME entity.
(Overrides MimeEntityAccept(MimeVisitor))
Public methodComputeContentMd5 Compute the MD5 checksum of the content.
Public methodDispose Releases all resources used by the MimeEntity object.
(Inherited from MimeEntity)
Protected methodDispose(Boolean) Releases the unmanaged resources used by the MimePart and optionally releases the managed resources.
(Overrides MimeEntityDispose(Boolean))
Public methodEquals
(Inherited from Object)
Protected methodFinalize Releases unmanaged resources and performs other cleanup operations before the MimeEntity is reclaimed by garbage collection.
(Inherited from MimeEntity)
Public methodGetBestEncoding(EncodingConstraint, CancellationToken) Calculate the most efficient content encoding given the specified constraint.
Public methodGetBestEncoding(EncodingConstraint, Int32, CancellationToken) Calculate the most efficient content encoding given the specified constraint.
Public methodGetHashCode
(Inherited from Object)
Public methodGetType
(Inherited from Object)
Protected methodMemberwiseClone
(Inherited from Object)
Protected methodOnHeadersChanged Called when the headers change in some way.
(Overrides MimeEntityOnHeadersChanged(HeaderListChangedAction, Header))
Public methodPrepare Prepare the MIME entity for transport using the specified encoding constraints.
(Overrides MimeEntityPrepare(EncodingConstraint, Int32))
Protected methodRemoveHeader Remove a header by name.
(Inherited from MimeEntity)
Protected methodSetHeader(String, Byte) Set the value of a header using the raw value.
(Inherited from MimeEntity)
Protected methodSetHeader(String, String) Set the value of a header.
(Inherited from MimeEntity)
Public methodToString Return a String that represents the MimeEntity for debugging purposes.
(Inherited from MimeEntity)
Protected methodTryInit Tries to use the given object to initialize the appropriate property.
(Inherited from MimeEntity)
Public methodVerifyContentMd5 Verify the Content-Md5 value against an independently computed md5sum.
Public methodWriteTo(Stream, CancellationToken) Write the MimeEntity to the specified output stream.
(Inherited from MimeEntity)
Public methodWriteTo(String, CancellationToken) Write the MimeEntity to the specified file.
(Inherited from MimeEntity)
Public methodWriteTo(FormatOptions, Stream, CancellationToken) Write the MimeEntity to the specified output stream.
(Inherited from MimeEntity)
Public methodWriteTo(FormatOptions, String, CancellationToken) Write the MimeEntity to the specified file.
(Inherited from MimeEntity)
Public methodWriteTo(Stream, Boolean, CancellationToken) Write the MimeEntity to the specified output stream.
(Inherited from MimeEntity)
Public methodWriteTo(String, Boolean, CancellationToken) Write the MimeEntity to the specified file.
(Inherited from MimeEntity)
Public methodWriteTo(FormatOptions, String, Boolean, CancellationToken) Write the MimeEntity to the specified file.
(Inherited from MimeEntity)
Public methodWriteTo(FormatOptions, Stream, Boolean, CancellationToken) Write the MimePart to the specified output stream.
(Overrides MimeEntityWriteTo(FormatOptions, Stream, Boolean, CancellationToken))
Public methodWriteToAsync(Stream, CancellationToken) Asynchronously write the MimeEntity to the specified output stream.
(Inherited from MimeEntity)
Public methodWriteToAsync(String, CancellationToken) Asynchronously write the MimeEntity to the specified file.
(Inherited from MimeEntity)
Public methodWriteToAsync(FormatOptions, Stream, CancellationToken) Asynchronously write the MimeEntity to the specified output stream.
(Inherited from MimeEntity)
Public methodWriteToAsync(FormatOptions, String, CancellationToken) Asynchronously write the MimeEntity to the specified file.
(Inherited from MimeEntity)
Public methodWriteToAsync(Stream, Boolean, CancellationToken) Asynchronously write the MimeEntity to the specified output stream.
(Inherited from MimeEntity)
Public methodWriteToAsync(String, Boolean, CancellationToken) Asynchronously write the MimeEntity to the specified file.
(Inherited from MimeEntity)
Public methodWriteToAsync(FormatOptions, String, Boolean, CancellationToken) Asynchronously write the MimeEntity to the specified file.
(Inherited from MimeEntity)
Public methodWriteToAsync(FormatOptions, Stream, Boolean, CancellationToken) Asynchronously write the MimePart to the specified output stream.
(Overrides MimeEntityWriteToAsync(FormatOptions, Stream, Boolean, CancellationToken))
Top
Remarks
A leaf-node MIME part that contains content such as the message body text or an attachment.
Example
C#
foreach (var attachment in message.Attachments) {
    if (attachment is MessagePart) {
        var fileName = attachment.ContentDisposition?.FileName;
        var rfc822 = (MessagePart) attachment;

        if (string.IsNullOrEmpty (fileName))
            fileName = "attached-message.eml";

        using (var stream = File.Create (fileName))
            rfc822.Message.WriteTo (stream);
    } else {
        var part = (MimePart) attachment;
        var fileName = part.FileName;

        using (var stream = File.Create (fileName))
            part.Content.DecodeTo (stream);
    }
}
See Also
Inheritance Hierarchy