C # SMTPClient Timeout domanda
-
16-09-2019 - |
Domanda
Mi chiedevo, hai veramente aumentare il timeout di un'operazione di invio manualmente per l'invio di allegati di grandi dimensioni. Ho letto la documentazione di Microsoft situato qui e dice la durata del timeout è di 100 secondi. Invece di lavorare con timeout, mi chiedevo se possibile piuttosto solo dirgli di continuare andando fino a quando un errore viene trovato o il messaggio di posta elettronica viene inviato con successo?
Soluzione
La pagina molto si collega già dà la risposta: utilizzare il metodo SendAsync. Dal SendAsync documentazione :
Per ricevere una notifica quando l'e-mail è stata inviata o l'operazione è stata annullata, aggiungere un gestore di eventi per l'evento SendCompleted.
L'evento SendCompleted richiede un SendCompletedEventHandler delegato, che a sua volta riceve un'istanza AsyncCompletedEventArgs , che può essere utilizzato per verificare se l'invio riuscita.