Roy
Roy

Backend Developer 曾在遊戲公司開發維護金流系統,使用 GCP、Linode 管理Linux伺服器 現在專注在 WordPress開發、代管,有空發表一下技術文章 個人部落格 https://rdfarm.net/

使用C#寄出Gmail信件

開發客服系統時,其中寄信的功能幾乎是必備的。
這篇會以C#示範寄到最常用也最方便的Gmail信箱,因為很多企業信箱都是使用Google的G Suite 服務,如果是其他家Mail server則smtp 必須修改成對應的。

首先要引入 System.Net.Mail

using System.Net.Mail;

填寫寄送資料, smtp主機填入mail server資料,下面範例是Gmail。
「Account」 、「password」 請更改成您的帳號密碼,如果有設兩步驟驗證登入,密碼直接改成應用程式密碼。

System.Net.Mail.SmtpClient MySmtp = new System.Net.Mail.SmtpClient("smtp.gmail.com", 587);
MySmtp.Credentials = new System.Net.NetworkCredential("Account", "password");
MySmtp.EnableSSl = true;
SMTP Port
Yahoo smtp.mail.yahoo.com 587
Gmail smtp.gmail.com 587
Hotmail smtp.live.com 587

設定發送Email
mail.From的前面「From Email」是發信,後面的「From Email Title」是要顯示的名稱。
mail.To.Add 收信者Email
mail.Priority 設定優先權
mail.Subject 信件標題
mail.Body 信件內容,這邊可以另外開發成網頁形式置入
MySmtp.Send 將信件發送出去

MailMessage mail = new MailMessage();
mail.From = new MailAddress(From Email, "From Email Title");
mail.To.Add(To Email);
mail.Priority = MailPriority.Normal;
mail.Subject = "Mail Title"; 
mail.Body = content;

MySmtp.Send(mail);

完整程式碼範例

using System.Net.Mail;

System.Net.Mail.SmtpClient MySmtp = new System.Net.Mail.SmtpClient("smtp.gmail.com", 587);
MySmtp.Credentials = new System.Net.NetworkCredential("Account", "password");

MySmtp.EnableSsl = true;
MailMessage mail = new MailMessage();

mail.From = new MailAddress(From Email, "From Email Title");
mail.To.Add(To Email);
mail.Priority = MailPriority.Normal;
mail.Subject = "Mail Title"; 
mail.Body = content;

MySmtp.Send(mail);
CC BY-NC-ND 2.0 版权声明

喜欢我的文章吗?
别忘了给点支持与赞赏,让我知道创作的路上有你陪伴。

加载中…

发布评论