Member 9579525 Ответов: 1

Исключение составляет не выбрасывание с помощью метода clinet.send


Я отправляю почту с помощью
System.Net.Mail;
Я хочу поймать исключение в случае, если идентификатор электронной почты получателя недействителен или недоступен. I мой код "SmtpFailedRecipientsException" ни в коем случае не вызывает исключения.
Что такое точное использование
SmtpFailedRecipientsException
. Как я могу определить, что "ToEmail" недействителен/недоступен. Пожалуйста помочь.

Что я уже пробовал:

использование(Smtp client = new SmtpClient())
{
пробовать{
клиент.Отправить сообщение);
}
поймать(SmtpFailedRecipientsException экс)
бросок экс;
}

1 Ответов

Рейтинг:
0

F-ES Sitecore

Вы не можете сказать, если это не так. Если он находится в неправильном формате, то он выдаст исключение, когда вы добавите его в качестве получателя, но если адрес электронной почты находится в правильном формате, но не является действительным получателем, то это невозможно узнать в этот момент кода. Некоторые из них действительно немного зависят от целевого smtp-сервера, но в целом вы не можете знать, является ли адрес электронной почты действительным.


Member 9579525

Спасибо.

Member 9579525

Можем ли мы вытащить почтовый ящик отправителя, чтобы определить, какая доставка почты не удалась?

F-ES Sitecore

Да, это обычный способ справиться с этим.

Member 9579525

ладно. Спасибо. Я погуглил вокруг этого.Получил решение как использовать pop3client. Я ничего об этом не знаю. Не могли бы вы поделиться чем-нибудь по этому поводу? Какая библиотека dll должна быть использована для этого.

F-ES Sitecore

Там нет встроенных классов .net, которые могут использовать pop3, так что вам придется поискать в google тот, который написал кто-то другой, и выбрать тот, который вам нравится (edit: или выучить pop3 и написать свой собственный :) )