ContentType Class

 

Represents a MIME protocol Content-Type header.

Namespace:   System.Net.Mime
Assembly:  System (in System.dll)

System.Object
  System.Net.Mime.ContentType

public class ContentType

NameDescription
System_CAPS_pubmethodContentType()

Initializes a new default instance of the ContentType class.

System_CAPS_pubmethodContentType(String)

Initializes a new instance of the ContentType class using the specified string.

NameDescription
System_CAPS_pubpropertyBoundary

Gets or sets the value of the boundary parameter included in the Content-Type header represented by this instance.

System_CAPS_pubpropertyCharSet

Gets or sets the value of the charset parameter included in the Content-Type header represented by this instance.

System_CAPS_pubpropertyMediaType

Gets or sets the media type value included in the Content-Type header represented by this instance.

System_CAPS_pubpropertyName

Gets or sets the value of the name parameter included in the Content-Type header represented by this instance.

System_CAPS_pubpropertyParameters

Gets the dictionary that contains the parameters included in the Content-Type header represented by this instance.

NameDescription
System_CAPS_pubmethodEquals(Object)

Determines whether the content-type header of the specified ContentType object is equal to the content-type header of this object.(Overrides Object.Equals(Object).)

System_CAPS_protmethodFinalize()

Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.(Inherited from Object.)

System_CAPS_pubmethodGetHashCode()

Determines the hash code of the specified ContentType object(Overrides Object.GetHashCode().)

System_CAPS_pubmethodGetType()

Gets the Type of the current instance.(Inherited from Object.)

System_CAPS_protmethodMemberwiseClone()

Creates a shallow copy of the current Object.(Inherited from Object.)

System_CAPS_pubmethodToString()

Returns a string representation of this ContentType object.(Overrides Object.ToString().)

The information in the ContentType class is used to describe the data contained in an e-mail message in such a way that software that displays e-mail can present the content in an appropriate manner. ContentType is used with the Attachment class to specify the type of content in the attachment.

The syntax of the Content-Type header is described in RFC 2045 Section 5.1. RFC 2046 provides detailed information about MIME media types and their parameters. These RFCs are available at http://www.ietf.org.

The following code example sends an e-mail message with an attachment and displays the ContentDisposition properties for the attachment.

public static void CreateMessageWithAttachment(string server)
{
	// Specify the file to be attached and sent.
	// This example assumes that a file named Data.xls exists in the
	// current working directory.
	string file = "data.xls";
	// Create a message and set up the recipients.
	MailMessage message = new MailMessage(
	   "jane@contoso.com",
	   "ben@contoso.com",
	   "Quarterly data report.",
	   "See the attached spreadsheet.");

	// Create  the file attachment for this e-mail message.
	Attachment data = new Attachment(file, MediaTypeNames.Application.Octet);
	// Add time stamp information for the file.
	ContentDisposition disposition = data.ContentDisposition;
	disposition.CreationDate = System.IO.File.GetCreationTime(file);
	disposition.ModificationDate = System.IO.File.GetLastWriteTime(file);
	disposition.ReadDate = System.IO.File.GetLastAccessTime(file);
	// Add the file attachment to this e-mail message.
	message.Attachments.Add(data);

	//Send the message.
	SmtpClient client = new SmtpClient(server);
	// Add credentials if the SMTP server requires them.
	client.Credentials = CredentialCache.DefaultNetworkCredentials;

    try {
	  client.Send(message);
	}
	catch (Exception ex) {
	  Console.WriteLine("Exception caught in CreateMessageWithAttachment(): {0}", 
                  ex.ToString() );			  
	}
	// Display the values in the ContentDisposition for the attachment.
	ContentDisposition cd = data.ContentDisposition;
	Console.WriteLine("Content disposition");
	Console.WriteLine(cd.ToString());
	Console.WriteLine("File {0}", cd.FileName);
	Console.WriteLine("Size {0}", cd.Size);
	Console.WriteLine("Creation {0}", cd.CreationDate);
	Console.WriteLine("Modification {0}", cd.ModificationDate);
	Console.WriteLine("Read {0}", cd.ReadDate);
	Console.WriteLine("Inline {0}", cd.Inline);
	Console.WriteLine("Parameters: {0}", cd.Parameters.Count);
	foreach (DictionaryEntry d in cd.Parameters)
	{
		Console.WriteLine("{0} = {1}", d.Key, d.Value);
	}
	data.Dispose();
}

.NET Framework
Available since 2.0

Any public static ( Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Return to top
Show: