Sono un po 'perplesso su come gestire SmtpClient ora che è usa e getta, soprattutto se effettuo chiamate utilizzando SendAsync. Presumibilmente non dovrei chiamare Dispose fino al completamento di SendAsync. Ma dovrei mai chiamarlo (ad esempio, usando "using"). Lo scenario è un servizio WCF che invia periodicamente messaggi di posta elettronica quando vengono effettuate le chiamate. La maggior parte del calcolo è veloce, ma l'invio di e-mail può richiedere circa un secondo, quindi Async sarebbe preferibile.
Devo creare un nuovo SmtpClient ogni volta che invio la posta? Devo crearne uno per l'intero WCF? Aiuto!
Aggiorna Nel caso in cui faccia la differenza, ogni email è sempre personalizzata per l'utente. Il WCF è ospitato su Azure e Gmail viene utilizzato come mailer.