MailAddress Class
Represents the address of an electronic mail sender or recipient.
Assembly: System (in System.dll)
| Name | Description | |
|---|---|---|
![]() | MailAddress(String) | Initializes a new instance of the MailAddress class using the specified address. |
![]() | MailAddress(String, String) | Initializes a new instance of the MailAddress class using the specified address and display name. |
![]() | MailAddress(String, String, Encoding) | Initializes a new instance of the MailAddress class using the specified address, display name, and encoding. |
| Name | Description | |
|---|---|---|
![]() | Address | Gets the e-mail address specified when this instance was created. |
![]() | DisplayName | Gets the display name composed from the display name and address information specified when this instance was created. |
![]() | Host | Gets the host portion of the address specified when this instance was created. |
![]() | User | Gets the user information from the address specified when this instance was created. |
| Name | Description | |
|---|---|---|
![]() | Equals(Object) | Compares two mail addresses.(Overrides Object.Equals(Object).) |
![]() | Finalize() | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.(Inherited from Object.) |
![]() | GetHashCode() | Returns a hash value for a mail address.(Overrides Object.GetHashCode().) |
![]() | GetType() | |
![]() | MemberwiseClone() | |
![]() | ToString() | Returns a string representation of this instance.(Overrides Object.ToString().) |
The MailAddress class is used by the SmtpClient and MailMessage classes to store address information for e-mail messages.
A mail address is composed of a User name, Host name and optionally, a DisplayName. The DisplayName can contain non-ASCII characters if you encode them.
The MailAddress class supports the following mail address formats:
A simple address format of user@host. If a DisplayName is not set, this is the mail address format generated.
A standard quoted display name format of "display name" <user@host>. If a DisplayName is set, this is the format generated.
Angle brackets are added around the User name, Host name for "display name" user@host if these are not included.
Quotes are added around the DisplayName for display name <user@host>, if these are not included.
Unicode characters are supported in the DisplayName. property.
A User name with quotes. For example, "user name"@host.
Consecutive and trailing dots in user names. For example, user...name..@host.
Bracketed domain literals. For example, <user@[my domain]>.
Comments. For example, (comment)"display name"(comment)<(comment)user(comment)@(comment)domain(comment)>(comment). Comments are removed before transmission.
A comma is used to separate elements in a list of mail addresses. As a result, a comma should not be used in unquoted display names in a list. The following mail addresses would be allowed
"John, Doe" <user@host>, "Bob, Smith" <user2@host>
The following mail address would not be allowed:
John, Doe <user@host>, Bob, Smith <user2@host>
Quotes can be embedded in a quoted string, but they must be escaped. The following mail addresses would be allowed
"John \"Jr\" Doe" <user@host>
"\"John \\\"Jr\\\" Doe\" <user@host>"
The following mail address would not be allowed:
"John "Jr" Doe" <user@host>
When the username is note quoted, all text between the start of the string (or comma) and the address are considered part of the DisplayName, including comments.
-- Example: (non comment) unquoted display (non comment) name (non comment) <user@host>
Although the MailAddress class accepts a mail address as valid, other mail servers may not accept the mail address.
The MailAddress class does not support the following mail address formats:
Mixed quoted and unquoted display names. For example, display "name" <user@host>
Groups, as defined in RFC 2822 Section 3.4 published by the IETF.
The obsolete user name formats of "user"."name"@host, user."name"@host or "user".name@host
The following code example demonstrates sending an e-mail message by using the SmtpClient, MailAddress, and MailMessage classes.
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.


