程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> ASP.NET >> ASP.NET基礎 >> asp.net mvc發送郵件實例講解

asp.net mvc發送郵件實例講解

編輯:ASP.NET基礎

QQ郵箱 POP3 和 SMTP 服務器地址設置如下:郵箱POP3服務器(端口110)SMTP服務器(端口25)qq.compop.qq.comsmtp.qq.comSMTP服務器需要身份驗證。

如果是設置POP3和SMTP的SSL加密方式,則端口如下:

POP3服務器(端口995)

SMTP服務器(端口465或587)。

qq郵箱要注意開啟下面的服務:qq會給你個授權碼,在下面的代碼中詳細的講了在哪用這個授權碼。

控制器中代碼:

using System.Net.Mail;//郵件發送需引用 
public ActionResult bindStep3(ModelCompany c)
    {
      .........
      ..........
      ...........
      MailAddress MessageFrom = new MailAddress("[email protected]"); //發件人郵箱地址 
      string MessageTo = company.COMPANY_EMAIL; //收件人郵箱地址 
      string MessageSubject = "激活驗證"; //郵件主題 
      string MessageBody = "請進行郵箱驗證來完成您注冊的最後一步,點擊下面的鏈接激活您的帳號:<br><a target='_blank' rel='nofollow' style='color: #0041D3; text-decoration: underline' href=''>激活</a>"; //郵件內容 (一般是一個網址鏈接,生成隨機數加驗證id參數,點擊去網站驗證。)
 
    if (SendMail(MessageFrom, MessageTo, MessageSubject, MessageBody))
    {
      Response.Write("<script type='text/javascript'>alert('發送郵件失敗');</script>");
    }
    else
    {
      Response.Write("<script type='text/javascript'>alert('發送郵件失敗');</script>");
    }
      TempData["CompanyBind3"] = company;
      return View("bindStep3");
    }

    public bool SendMail(MailAddress MessageFrom,string MessageTo,string MessageSubject,string MessageBody)  //發送驗證郵件
    {
      MailMessage message = new MailMessage();
      message.To.Add(MessageTo);
      message.From = MessageFrom;
      message.Subject = MessageSubject;
      message.SubjectEncoding = System.Text.Encoding.UTF8;
      message.Body = MessageBody;
      message.BodyEncoding = System.Text.Encoding.UTF8;
      message.IsBodyHtml = true; //是否為html格式 
      message.Priority = MailPriority.High; //發送郵件的優先等級 
      SmtpClient sc = new SmtpClient();
      sc.EnableSsl = true;//是否SSL加密
      sc.Host = "smtp.qq.com"; //指定發送郵件的服務器地址或IP 
      sc.Port = 587; //指定發送郵件端口 
      sc.Credentials = new System.Net.NetworkCredential("[email protected]", "xxxxx"); //指定登錄服務器的用戶名和密碼(注意:這裡的密碼是開通上面的pop3/smtp服務提供給你的授權密碼,不是你的qq密碼)

      try
      {
        sc.Send(message); //發送郵件 
      }
      catch(Exception e)
      {
        Response.Write(e.Message);
        return false;
      }
      return true;
      
    }

 實現效果:

 參考文章:

http://www.jb51.net/article/83796.htm

http://www.jb51.net/article/83801.htm

以上就是本文的全部內容,希望對大家學習asp.net mvc發送郵件有所幫助。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved