Отправка писем через (new SmtpClient()).Send(msg)
Получите сообщение SmtpFailedRecipientException
с сообщением «Почтовый ящик недоступен. Ответ сервера: 5.7.1 Не удалось передать», не показывая мне остальную часть текста ошибки. Я хочу получить полный текст сообщения об ошибке.SmtpFailedRecipientException, не отображающий полный текст сообщения
0
A
ответ
0
Полное сообщение, полученное стеком SMTP, можно найти в объекте InnerException.Message
.
Что-то вроде
if(smtpEx.InnerException != null)
{
LogMessage(smtpEx.InnerException.Message;
}
также InnerException является исключением и, таким образом, присутствует InnerException.InnerException свойство с его сообщением. И это продолжается до тех пор, пока значение InnerException не будет равно нулю.
+0
или 'LogMessage (smtpEx.GetBaseException())' – Charlie
Откуда вы знаете, что есть другой текст? – Steve
Спасибо @Steve, я читаю сообщение в моей системе регистрации ошибок. Я думаю, ответ сервера был с проблемным адресом электронной почты. – Charlie
Ну, вероятно, остальная часть сообщения находится в свойстве InnerException. Что-то вроде: 'if (smtpEx.InnerException! = Null) Console.WriteLine (smtpEx.InnerException.Message);' Дайте мне знать, если это так, поэтому я мог бы изменить этот комментарий в ответе – Steve