1. 程式人生 > 其它 >C#接入SMTP郵件服務

C#接入SMTP郵件服務

我的個人部落格

引入SMTP服務包

//引入郵件服務包
using System.Net.Mail;
using System.Net;

這兩個引用用於C#接入郵件的SMTP服務

 

控制元件頁面

 

定時器

為了給使用者更好的體驗,我們使用定時器,給使用者看到具體剩餘時間

開始建立一個功能類

新建一個類MailVeriCodeClass,裡面定義好各類功能函式

首先引入必要的名稱空間

//傳送郵件需要引用的名稱空間
using System.Net.Mail;
using System.Net;
//正則驗證引用
using System.Text.RegularExpressions;

功能類程式碼

 public class MailVeriCodeClass
  {
       #region  郵箱驗證碼功能
       /// <summary>
       /// 生成隨機驗證碼
       /// </summary>
       /// <param name="CodeLength">驗證碼長度</param>
       public static string CreateRandomMailCode(int CodeLength)
      {
           int randNum;
           char code;
           string randomCode = String.Empty;//隨機驗證碼

           //生成一定長度的隨機驗證碼      
           //Random random = new Random();//生成隨機數物件
           for (int i = 0; i < CodeLength; i++)
          {
               //利用GUID生成6位隨機數      
               byte[] buffer = Guid.NewGuid().ToByteArray();//生成位元組陣列
               int seed = BitConverter.ToInt32(buffer, 0);//利用BitConvert方法把位元組陣列轉換為整數
               Random random = new Random(seed);//以生成的整數作為隨機種子
               randNum = random.Next();

               //randNum = random.Next();                
               if (randNum % 3 == 1)
              {
                   code = (char)('A' + (char)(randNum % 26));//隨機大寫字母
              }
               else if (randNum % 3 == 2)
              {
                   code = (char)('a' + (char)(randNum % 26));//隨機小寫字母
              }
               else
              {
                   code = (char)('0' + (char)(randNum % 10));//隨機數字
              }
               randomCode += code.ToString();
          }
           return randomCode;
      }


       /// <summary>
       /// 傳送郵件驗證碼
       /// </summary>
       /// <param name="MyEmailAddress">發件人郵箱地址</param>
       /// <param name="RecEmailAddress">收件人郵箱地址</param>
       /// <param name="Subject">郵件主題</param>
       /// <param name="MailContent">郵件內容</param>
       /// <param name="AuthorizationCode">郵箱授權碼</param>
       /// <returns></returns>
       public static bool SendMailMessage(string MyEmailAddress, string RecEmailAddress, string Subject, string Body, string AuthorizationCode)
      {

           MailMessage mail = new MailMessage();
           mail.From = new MailAddress(MyEmailAddress);//發件人郵箱地址
           mail.To.Add(new MailAddress(RecEmailAddress));//收件人郵箱地址
           mail.Subject = Subject;//郵件標題
           mail.Body = Body;  //郵件內容  
           mail.Priority = MailPriority.High;//優先順序

           SmtpClient client = new