在ASP.NET中傳送電子郵件的例項教程

weixin_34126215發表於2014-01-17

首先、匯入名稱空間:

 程式碼如下 複製程式碼
using System.Net.Mail;
 

定義傳送電子郵件的方法[網上很多不同的,可以對比著看一下,WinForm的也適用]:

 程式碼如下 複製程式碼
/// <summary>
/// 傳送電子郵件
/// </summary>
/// <param name="MessageFrom">發件人郵箱地址</param>
/// <param name="MessageTo">收件人郵箱地址</param>
/// <param name="MessageSubject">郵件主題</param>
/// <param name="MessageBody">郵件內容</param>
/// <returns></returns>
public bool Send(MailAddress MessageFrom, string MessageTo, string MessageSubject, string MessageBody)
{
 MailMessage message = new MailMessage();
 message.From = MessageFrom;
 message.To.Add(MessageTo); //收件人郵箱地址可以是多個以實現群發
 message.Subject = MessageSubject;
 message.Body = MessageBody;
 message.IsBodyHtml = true; //是否為html格式
 message.Priority = MailPriority.Normal; //傳送郵件的優先等級
 SmtpClient sc = new SmtpClient();
 sc.Host = "smtp.qq.com"; //指定傳送郵件的伺服器地址或IP
 sc.Port = 25; //指定傳送郵件埠
 //指定登入伺服器的使用者名稱和密碼(發件人的郵箱登陸密碼)
 sc.Credentials = new System.Net.NetworkCredential("【發件箱地址】", "【www.111cn.net發件箱密碼】");
 try
 {
  sc.Send(message); //傳送郵件
 }
 catch
 {
  return false;
 }
 return true;
}
 

義傳送電子郵件的方法

呼叫定義的方法,實現傳送郵件:

 程式碼如下 複製程式碼
/// <summary>
/// 傳送郵件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void ForMail(string name, string mail)
{
 try
 {
  //string email = txtemail.Text.Trim();
  MailAddress MessageFrom = new MailAddress("【發件箱地址】"); //發件人郵箱地址
                  string MessageTo = mail; //收件人郵箱地址
  string MessageSubject = bs.HtmlEncode(郵件主題);
  //郵件內容 (一般是一個網址連結,生成隨機數加驗證id引數,點選去網站驗證。)";
  string MessageBody = "" + content1.Value.Trim() + "";
  if (Send(MessageFrom, MessageTo, MessageSubject, MessageBody))
  {
   //Response.Write("傳送郵件成功");
  }
  else
  {
   //Response.Write("傳送郵件失敗");
  }
 }
 catch
             {
  //ClientScript.RegisterStartupScript(ClientScript.GetType(), "myscript", "<script>alert('客戶資訊刪除失敗')</script>");
 }
}
 

呼叫方法傳送郵件
 

不同郵箱的smtp地址都不一樣、需要比如QQ的是smtp.qq.com、163的是smtp.163.com

更多詳細內容請檢視:http://www.111cn.net/net/net/57055.htm

相關文章