SmtpClient.UseDefaultCredentials 属性

定义

获取或设置 Boolean 值,该值控制 DefaultCredentials 是否随请求一起发送。

public:
 property bool UseDefaultCredentials { bool get(); void set(bool value); };
public bool UseDefaultCredentials { get; set; }
member this.UseDefaultCredentials : bool with get, set
Public Property UseDefaultCredentials As Boolean

属性值

如果使用默认凭据,则为 true;否则为 false。 默认值为 false

例外

发送电子邮件时无法更改此属性的值。

示例

下面的代码示例演示如何使用此属性。

static void CreateTestMessage2( String^ server )
{
   String^ to = L"jane@contoso.com";
   String^ from = L"ben@contoso.com";
   MailMessage^ message = gcnew MailMessage( from,to );
   message->Subject = L"Using the new SMTP client.";
   message->Body = L"Using this new feature, you can send an email message from an application very easily.";
   SmtpClient^ client = gcnew SmtpClient( server );
   
   // Credentials are necessary if the server requires the client 
   // to authenticate before it will send email on the client's behalf.
   client->UseDefaultCredentials = true;
   client->Send( message );
   client->~SmtpClient();
}
public static void CreateTestMessage2(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 email 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 email on the client's behalf.
    client.UseDefaultCredentials = true;

    try
    {
        client.Send(message);
    }
    catch (Exception ex)
    {
        Console.WriteLine("Exception caught in CreateTestMessage2(): {0}",
            ex.ToString());
    }
}

注解

某些 SMTP 服务器要求在服务器代表客户端发送电子邮件之前对客户端进行身份验证。 如果服务器请求,则当此SmtpClient对象应使用当前登录用户的默认凭据进行身份验证时,将此属性true设置为 。 对于客户端应用程序,这是在大多数情况下所需的行为。

还可以使用应用程序和计算机配置文件指定凭据信息。 有关详细信息,请参阅 <mailSettings> 元素 (网络设置)

如果 属性 UseDefaultCredentials 设置为 false, ,则在连接到服务器时, Credentials 属性中设置的值将用于凭据。 如果 属性 UseDefaultCredentials 设置为 false ,但 Credentials 尚未设置 该属性,则邮件以匿名方式发送到服务器。

注意

如果提供了用于基本身份验证的凭据,这些凭据将以明文形式发送到服务器。 这会带来安全问题,因为可以看到你的凭据,然后被其他人使用。

适用于