Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# SmtpFailedRecipientException和SMTPFailedRecipientSexException_C#_.net_Exception_Exception Handling_Smtpclient - Fatal编程技术网

C# SmtpFailedRecipientException和SMTPFailedRecipientSexException

C# SmtpFailedRecipientException和SMTPFailedRecipientSexException,c#,.net,exception,exception-handling,smtpclient,C#,.net,Exception,Exception Handling,Smtpclient,我正在努力区分这两个例外,尤其是基于它们的属性和用法: 它们都为单个电子邮件地址定义了FailedRecipient属性 如果捕获到SmtpFailedRecipientException此屏蔽SmtpFailedRecipientException 从逻辑上讲,我希望复数版本优先-服务器无法将您的电子邮件发送给任何收件人-而不是服务器无法发送给单个特定收件人 但是,如果你发送给8个收件人,其中两个失败了,你会得到什么样的例外 正确处理对SmtpClient.Send()的调用在捕获Smtp

我正在努力区分这两个例外,尤其是基于它们的属性和用法:

  • 它们都为单个电子邮件地址定义了
    FailedRecipient
    属性
  • 如果捕获到
    SmtpFailedRecipientException
    此屏蔽
    SmtpFailedRecipientException
从逻辑上讲,我希望复数版本优先-服务器无法将您的电子邮件发送给任何收件人-而不是服务器无法发送给单个特定收件人

但是,如果你发送给8个收件人,其中两个失败了,你会得到什么样的例外

正确处理对
SmtpClient.Send()
的调用在捕获
SmtpFailedRecipientException
smtpfailedRecipientSexException
SmtpException
方面应该是什么样的?

是的一个子类。此外,
SmtpFailedRecipientException
是的一个子类

但是,如果你发送给8个收件人,其中两个失败了,你会得到什么样的例外

您将得到的异常是
SMTPFailedRecipientSexException

在中,对SmtpClient.Send()的正确处理调用应该是什么样的 捕获SmtpFailedRecipientException的条款, SmtpFailedRecipientsException和SmtpException


遗憾的是,这没有得到回应——我的处境完全一样
try {

    smtpClient.Send(mailMessage);    
}
catch (SmtpFailedRecipientsException recipientsException)
{
    Console.WriteLine($"Failed recipients: {string.Join(", ", recipientsException.InnerExceptions.Select(fr => fr.FailedRecipient))}");

    // your code here
}
catch (SmtpFailedRecipientException recipientException)
{
    Console.WriteLine($"Failed recipient: {recipientException.FailedRecipient}");

    // your code here
}
catch (SmtpException smtpException)
{
    Console.WriteLine(smtpException.Message);

    // your code here
}