Export (0) Print
Expand All

SmtpClient.ClientCertificates Property

Note: This property is new in the .NET Framework version 2.0.

Specify which certificates should be used to establish the Secure Sockets Layer (SSL) connection.

Namespace: System.Net.Mail
Assembly: System (in system.dll)

public X509CertificateCollection ClientCertificates { get; }
/** @property */
public X509CertificateCollection get_ClientCertificates ()

public function get ClientCertificates () : X509CertificateCollection

Property Value

An X509CertificateCollection, holding one or more client certificates. The default value is derived from the mail configuration attributes in a configuration file.

Client certificates are, by default, optional; however, the server configuration might require that the client present a valid certificate as part of the initial connection negotiation.


The Framework caches SSL sessions as they are created and attempts to reuse a cached session for a new request, if possible. When attempting to reuse an SSL session, the Framework uses the first element of ClientCertificates (if there is one), or tries to reuse an anonymous sessions if ClientCertificates is empty.

Windows 95, Windows 98, Windows 98 Second Edition, Windows Millennium Edition Platform Note: The Framework attempts to reuse an SSL session only if a client certificate is not required.

The following code example establishes an SSL connection with the SMTP server and uses the connection to send an email.

public static void CreateTestMessage(string server)
    string to = "jane@contoso.com";
    string from = "ben@contoso.com";
    MailMessage message = new MailMessage(from, to);
    message.Subject = "Using the new SMTP client.";
    message.Body = @"Using this new feature, you can send an e-mail message from an application very easily.";
    SmtpClient client = new SmtpClient(server);
    // Credentials are necessary if the server requires the client 
    // to authenticate before it will send e-mail on the client's behalf.
    client.UseDefaultCredentials = true;
                client.EnableSsl = true;

Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see System Requirements.

.NET Framework

Supported in: 2.0

Community Additions

© 2014 Microsoft