SmtpClient.Timeout Propriedade
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Obtém ou define um valor que especifica o tempo após o qual uma chamada síncrona Send atinge o tempo limite.
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
Valor da propriedade
Um Int32 que especifica o valor de tempo limite em milissegundos. O valor padrão é 100.000 (100 segundos).
Exceções
O valor especificado para uma operação de conjunto era menor que zero.
Você não pode alterar o valor dessa propriedade quando um email está sendo enviado.
Exemplos
O exemplo de código a seguir demonstra como obter e definir o valor de tempo limite.
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);
}
Comentários
Por padrão, chamadas para o bloco de Send método até que a operação seja concluída. Se você definir a Timeout propriedade como um valor positivo e uma Send operação não puder ser concluída no tempo alocado, a SmtpClient classe gerará uma exceção SmtpException .
Para enviar uma mensagem e continuar a execução no thread do aplicativo, use o SendAsync método.