.Net SMTP Queue

Кто-нибудь видел очередь электронной почты .net?

Я хочу, чтобы указать SMTP-сервер для отправки через, сообщить о проблемах и повторить отправку писем по необходимости или запросить.

В идеале я хотел бы что-то открыть с открытым исходным кодом.

Ответ 1

Checkout System.Net.Mail, http://msdn.microsoft.com/en-us/library/dk1fb84h.aspx. В частности, вы хотите посмотреть MailMessage и SmtpClient.

ИЗМЕНИТЬ

 // Invokes the SendEmail method on another thread.
 // Read MSDN on catching exception on completion and then wait a bit and send again.
 Task.Factory.StartNew(() => SendEmail()); 

Ответ 2

Если вы используете .NET в Windows, вы можете использовать службу SMTP IIS. Используйте SmtpClient и установите способ доставки в каталог пикапов. В этом режиме SmtpClient будет записывать в папку пикапа SMTP (что-то вроде c:\inetpub\smtp_root\pickup) вместо того, чтобы пытаться доставить почту. Эта папка представляет собой очередь сообщений, а служба SMTP будет обрабатывать доставку, повторить попытку и NDR и т.д. Гораздо лучше, чем пытаться написать ее самостоятельно.