C#如何發送郵件


准備工作:

1.開啟Smtp服務

2.如果郵件設置中有“客戶端授權碼"(以163郵箱為例,有的郵箱不需要),需要開啟“客戶端授權碼"

發送郵件:

using (MailMessage mailMessage = new MailMessage()) {

  using (SmtpClient smtpClient = new SmtpClient(Smtp 服務器)) { 

    mailMessage.To.Add(接收郵箱);  mailMessage.To.Add(接收郵箱 2); 

    mailMessage.Body = "郵件正文"; 

    mailMessage.From = new MailAddress(發送郵箱); 

    mailMessage.Subject = "郵件標題"; 

    smtpClient.Credentials = new System.Net.NetworkCredential(Smtp 發送用戶名, Smtp 發 送密碼);//如果啟用了“客戶端授權碼”,要用授權碼代替密碼 

    smtpClient.Send(mailMessage);

  } 

}

如果啟用了SSL,並且不支持非安全連接,還需要設置smtpClient.EnableSsl=true(某些服務器中不開放25端口,所以只能用Ssl的方式以465端口發送)。

如果大量通過郵箱發送驗證碼,可以借助於 SendCloud、阿里雲等第三方的“觸發郵件” 服務,可以保證到達率。

如果是公司內部發郵件,可以自己搭建郵件服務器或者購買企業郵箱服務。

以上代碼是以第三方免費的smtp服務進行發送的,如果發送郵件太多,可能會被封,只能換服務商。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM