2014-09-22 41 views
0

我有一個網站需要發送特定操作的電子郵件。未知未使用異步發送電子郵件

 var mail = new MailMessage("[email protected]", 
        "[email protected]", "Generic Subject Title", 
        string.Format("Some body content"); 

     using (var eServer = new SmtpClient("mailsrv.mycompany.com")) 
     { 
      eServer.Send(mail); 
     } 

上面的代碼工作正常,但發送功能需要8-15秒之間完成,然後我幾秒鐘後收到的電子郵件。我想至少消除頁面響應中的延遲。

 using (var eServer = new SmtpClient("mailsrv.mycompany.com")) 
     { 
      eServer.SendMailAsync(mail); 
     } 

當使用上述我的頁面快速加載並完成所有其他進程,但我從來沒有收到電子郵件。

有沒有人有一個想法,爲什麼我不會只收到電子郵件,因爲我使用的是異步版本?

回答

1

由於使用了塊,所以在有機會真正發送郵件之前,先處理'eServer'變量。如果您使用SendMailAsync,則不應直接處置SmtpClient。

相關問題