我正在使用 NetMail 从 Web 应用程序中发送电子邮件,并且在没有任何问题时可以正常工作!我试图捕捉一些错误,特别是错误的电子邮件地址,这应该会导致异常,但似乎没有。我的电子邮件地址是 firstname.dot.middleinitial.lastname@domain_name。我没有故意包含中间首字母以导致错误,但是当我跟踪它通过的代码时。这就是我所拥有的:
SmtpClient sc = new SmtpClient(<Mail_relay>);
sc.Credentials = new NetworkCredential();
try
{
sc.Send(mm);
}
catch (SmtpFailedRecipientsException FRE)
{
foreach (SmtpFailedRecipientException smtpFailedRecipientException in FRE.InnerExceptions)
{
// Get the email that is causing the exception
string sFailedRecipient = smtpFailedRecipientException.FailedRecipient;
// Get the status code
SmtpStatusCode sc = FRE.StatusCode;
}
}
catch (SmtpException smtpEx)
{
SmtpStatusCode sc = smtpEx.StatusCode;
}
catch (Exception generalEx)
{
string sMessage = generalEx.Message;
}
我认为错误的电子邮件地址会在第一个 catch 块中被捕获,但事实并非如此,它只是通过所有 catch 块。