SmtpClient.Timeout Propriété
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Obtient ou définit une valeur qui spécifie le délai d'attente d'un appel Send synchrone.
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
Valeur de propriété
Int32 qui spécifie la valeur du délai d'attente, en millisecondes. La valeur par défaut est 100,000 (100 secondes).
Exceptions
La valeur spécifiée pour une opération de définition était inférieure à zéro.
Vous ne pouvez pas modifier la valeur de cette propriété lorsqu'un message électronique est en cours d'envoi.
Exemples
L’exemple de code suivant illustre l’obtention et la définition de la valeur de délai d’attente.
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);
}
Remarques
Par défaut, appelle le bloc de méthode Send jusqu’à ce que l’opération se termine. Si vous définissez la Timeout propriété sur une valeur positive et qu’une Send opération ne peut pas se terminer dans le délai imparti, la SmtpClient classe lève une SmtpException exception.
Pour envoyer un message et poursuivre l’exécution dans le thread d’application, utilisez la SendAsync méthode .