程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> C#發送電子郵件 (異步)

C#發送電子郵件 (異步)

編輯:C#入門知識

[csharp]
///驗證電子郵件的正則表達式 
[csharp] view plaincopyprint?
string emailStr = @"^([\w-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$"; 
[csharp] 
/// <summary> 
        /// 異步發送電子郵件 
        /// </summary> 
        /// <param name="fromEmail">發送方電子郵件</param> 
        /// <param name="fromPwd">發送方電子郵件密碼</param> 
        /// <param name="toEmail">接收方電子郵件</param> 
        /// <param name="subject">郵件標題</param> 
        /// <param name="body">郵件內空</param> 
        /// <param name="emailType">郵件類型</param> smtp.163.com.cn; smtp.qq.com.cn; smtp.126.com.cn;  smtp.sina.com.cn 
        private void SendEmailAsync(string fromEmail, string fromPwd, string toEmail, string subject, string body, string emailType) 
        { 
            MailAddress addrFrom = new MailAddress(fromEmail, fromEmail); 
            MailAddress addrTo = new MailAddress(toEmail, toEmail); 
            MailMessage mm = new MailMessage(addrFrom, addrTo); 
            mm.BodyEncoding = Encoding.UTF8; 
            mm.IsBodyHtml = true; 
            mm.Subject = subject; 
            mm.Body = body; 
 
            if (!string.IsNullOrEmpty(attFile)) 
            { 
                Attachment att = new Attachment(attFile, MediaTypeNames.Application.Octet); 
                ContentDisposition cd = att.ContentDisposition; 
                cd.CreationDate = File.GetCreationTime(attFile); 
                cd.ModificationDate = File.GetLastWriteTime(attFile); 
                cd.ReadDate = File.GetLastAccessTime(attFile); 
                mm.Attachments.Add(att);//添加附件 
            } 
 
            NetworkCredential nc = new NetworkCredential(fromEmail, fromPwd); 
            SmtpClient smtp = new SmtpClient(emailType); 
            smtp.UseDefaultCredentials = false; 
            smtp.Credentials = nc; 
            smtp.EnableSsl = false; www.2cto.com
            smtp.DeliveryMethod = SmtpDeliveryMethod.Network; 
            smtp.SendCompleted+=new SendCompletedEventHandler(smtp_SendCompleted); 
            smtp.SendAsync(mm, "OK"); 
        } 
 
        void smtp_SendCompleted(object sender, AsyncCompletedEventArgs e) 
        { 
            if (e.UserState.ToString() == "OK") 
                MessageBox.Show("發送成功!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); 
        } 

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