私は Visual Studio 2010、.NET 4.0 を使用しており、SMTPClient.TimeOut プロパティをテストして実際に SmtpException をスローさせようとしています。ただし、TimeOut プロパティを 1 ミリ秒に設定しても、1 ミリ秒未満で送信されているように見える電子メールが送信されますが、オブジェクトを調べると、timedOut というプライベート メンバー変数が設定されていることがわかります。 true は、実際にタイムアウトしたことを示します。
これが私のコードです:
try
{
MailMessage emailMsg = new MailMessage(this.EmailFrom, this.EmailTo, this.EmailSubject, msg);
//SmtpClient emailClient = new SmtpClient(this.EmailServer);
SmtpClient emailClient = new SmtpClient();
emailClient.Credentials = new System.Net.NetworkCredential("username", "password");
emailMsg.IsBodyHtml = true;
emailClient.Timeout = Properties.Settings.Default.SMTPTimeOut;
emailClient.Timeout = 1;
emailClient.Send(emailMsg);
sendingEmail = true;
return sendingEmail;
}
catch (Exception ex)
{
// Handle time out exception here.
}
誰かがこれを見たことがありますか、これをテストするためのより良い方法を知っていますか? 現在、gmail の smtp にアクセスしています。