Мне было интересно, вам действительно нужно увеличить таймаут операции отправки вручную для отправки больших вложений. Я прочитал документацию Microsoft, расположенную here, и говорит, что длина таймаута составляет 100 секунд. Вместо того, чтобы работать с таймаутом, мне было интересно, возможно ли его просто сказать, что он продолжит работу до тех пор, пока не будет найдена ошибка или сообщение отправлено успешно?C# SMTPClient Timeout Question
1
A
ответ
3
Сама страница, на которую вы ссылаетесь, уже дает ответ: используйте метод SendAsync. Из SendAsync documentation:
Чтобы получить уведомление, когда по электронной почте была отправлена или операция была отменена, добавить обработчик события к событию SendCompleted.
Событие SendCompleted требует SendCompletedEventHandler делегата, который в свою очередь получает AsyncCompletedEventArgs экземпляр, который может быть использован, чтобы выяснить, является ли отсылка удалось.
Вау, позвольте мне проверить это, спасибо .... –
Если метод async не работает, есть ли обратный вызов? –
@lb: Смотрите мое редактирование. –