利用Mail Server 發送Email,假設為一個表單,有個按鈕。
當使用者輸入完email後,系統自動發佈email給使用者。
asp.net C# 中自動發送信件,不外乎要知道兩個 MailMessage SmtpClient。
SMTP : 簡單郵件傳輸協定(Simple Mail Transfer Protocol, SMTP) ,事實上就是在Internet傳輸email的標準。
因此,我們要利用mail server 來寄送email。
public static void SendAutomatedEmail(string ReceiveMail)
{
System.Net.Mail.MailMessage MyMail = new System.Net.Mail.MailMessage();
MyMail.From = new System.Net.Mail.MailAddress("xxx@domain.com.tw");
MyMail.To.Add(ReceiveMail); //設定收件者Email
MyMail.Bcc.Add("密件副本的收件者Mail"); //加入密件副本的Mail
MyMail.Subject = "Email Test";
MyMail.Body = "<h1>HIHI</h1>"; //設定信件內容
MyMail.IsBodyHtml = true; //是否使用html格式
System.Net.Mail.SmtpClient MySMTP = new System.Net.Mail.SmtpClient(host);
MySMTP.Credentials = new System.Net.NetworkCredential("account", "PW");
try
{
MySMTP.Send(MyMail);
MyMail.Dispose(); //釋放資源
}
catch (Exception ex)
{
ex.ToString();
}
}
這樣就可以寄送mail啦~~但,我發現因為是用自己公司的domain,所以我分別實測了GMAIL , YAHOO
發現只要是GMAIL都會被歸類到垃圾信件,當然也有解決辦法,例如去跟GOOGLE寫回報說,這個Domain並不是發送垃圾信件。
但主管最終認為不然我們利用gmail的信箱去寄信,就不會被歸類到垃圾信件了。
詳細的請看下篇:C# 利用Gmail自動發送郵件
參考資料:
1. 小白新手DV