ContentType.CharSet Property


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

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

public string CharSet { get; set; }

Property Value

Type: System.String

A String that contains the value associated with the charset parameter.

In the following example of a Content-Type header, the value of the CharSet property is "us-ascii".

content-type: application/x-myType; charset=us-ascii

Set this property to null or String.Empty to remove the charset information from the header.

A grammar that details the syntax of the Content-Type header is described in RFC 2045 Section 5.1. An in-depth discussion of the charset parameter is contained in RFC 2046 Section 4.1.2. These RFCs are available at

The following code example displays the value of the property.

public static void CreateMessageWithMultipleViews(string server, string recipients)
	// Create a message and set up the recipients.
	MailMessage message = new MailMessage(
		"This e-mail message has multiple views.",
		"This is some plain text.");

	// Construct the alternate body as HTML.
	string body = "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\">";
	body += "<HTML><HEAD><META http-equiv=Content-Type content=\"text/html; charset=iso-8859-1\">";
	body += "</HEAD><BODY><DIV><FONT face=Arial color=#ff0000 size=2>this is some HTML text";
	body += "</FONT></DIV></BODY></HTML>";

	ContentType mimeType = new System.Net.Mime.ContentType("text/html");
	// Add the alternate body to the message.

	AlternateView alternate = AlternateView.CreateAlternateViewFromString(body, mimeType);

	// Send the message.
	SmtpClient client = new SmtpClient(server);
	client.Credentials = CredentialCache.DefaultNetworkCredentials;

    try {
	catch (Exception ex) {
	  Console.WriteLine("Exception caught in CreateMessageWithMultipleViews(): {0}", 
                  ex.ToString() );			  
	// Display the values in the ContentType for the attachment.
	ContentType c = alternate.ContentType;
	Console.WriteLine("Content type");
	Console.WriteLine("Boundary {0}", c.Boundary);
	Console.WriteLine("CharSet {0}", c.CharSet);
	Console.WriteLine("MediaType {0}", c.MediaType);
	Console.WriteLine("Name {0}", c.Name);
	Console.WriteLine("Parameters: {0}", c.Parameters.Count);
	foreach (DictionaryEntry d in c.Parameters)
		Console.WriteLine("{0} = {1}", d.Key, d.Value);

.NET Framework
Available since 2.0
Return to top