SmtpClient.Timeout Eigenschaft

Definition

Ruft einen Wert ab, der die Zeitspanne bis zum Timeout eines synchronen Send-Aufrufs angibt, oder legt diesen fest.

public:
 property int Timeout { int get(); void set(int value); };
public int Timeout { get; set; }
member this.Timeout : int with get, set
Public Property Timeout As Integer

Eigenschaftswert

Ein Int32, das den Timeoutwert in Millisekunden angibt. Der Standardwert ist 100.000 (100 Sekunden).

Ausnahmen

Der für einen set-Vorgang angegebene Wert war kleiner als 0 (null).

Sie können den Wert dieser Eigenschaft nicht ändern, während eine E-Mail-Nachricht gesendet wird.

Beispiele

Im folgenden Codebeispiel wird das Abrufen und Festlegen des Timeoutwerts veranschaulicht.

static void CreateTimeoutTestMessage( String^ server )
{
   String^ to = L"jane@contoso.com";
   String^ from = L"ben@contoso.com";
   String^ subject = L"Using the new SMTP client.";
   String^ body = L"Using this new feature, you can send an email message from an application very easily.";
   MailMessage^ message = gcnew MailMessage( from,to,subject,body );
   SmtpClient^ client = gcnew SmtpClient( server );
   Console::WriteLine( L"Changing time out from {0} to 100.", client->Timeout );
   client->Timeout = 100;
   
   // Credentials are necessary if the server requires the client 
   // to authenticate before it will send email on the client's behalf.
   client->Credentials = CredentialCache::DefaultNetworkCredentials;
   client->Send( message );
}
public static void CreateTimeoutTestMessage(string server)
{
    string to = "jane@contoso.com";
    string from = "ben@contoso.com";
    string subject = "Using the new SMTP client.";
    string body = @"Using this new feature, you can send an email message from an application very easily.";
    MailMessage message = new MailMessage(from, to, subject, body);
    SmtpClient client = new SmtpClient(server);
    Console.WriteLine("Changing time out from {0} to 100.", client.Timeout);
    client.Timeout = 100;
    // Credentials are necessary if the server requires the client
    // to authenticate before it will send email on the client's behalf.
    client.Credentials = CredentialCache.DefaultNetworkCredentials;
    client.Send(message);
}

Hinweise

Standardmäßig werden Aufrufe der Send -Methode blockiert, bis der Vorgang abgeschlossen ist. Wenn Sie die Timeout Eigenschaft auf einen positiven Wert festlegen und ein Send Vorgang nicht in der zugewiesenen Zeit abgeschlossen werden kann, löst die SmtpClient -Klasse eine Ausnahme aus SmtpException .

Verwenden Sie SendAsync die -Methode, um eine Nachricht zu senden und die Ausführung im Anwendungsthread fortzusetzen.

Gilt für: