欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

asp.net實現(xiàn)的群發(fā)郵件功能詳解

 更新時間:2017年05月29日 10:03:14   作者:曉鏡水月  
這篇文章主要介紹了asp.net實現(xiàn)的群發(fā)郵件功能,結(jié)合具體實例形式分析了asp.net基于SMTP服務(wù)群發(fā)QQ郵件的相關(guān)操作技巧與注意事項,需要的朋友可以參考下

本文實例講述了asp.net實現(xiàn)的群發(fā)郵件功能。分享給大家供大家參考,具體如下:

前段時間在幫老師開發(fā)的網(wǎng)站中需要用到一個群發(fā)郵件的功能,而自己之前學習cms系統(tǒng)的時候用的we7的群發(fā)郵件功能也有一些問題,于是乎便自己去網(wǎng)上查了一下資料,自己總結(jié)了一下,并且封裝成了一個類,親測有用,支持附件,希望對大家也有些幫助,我測試時用的是qq郵箱,成功的前提是要在郵箱設(shè)置中打開smtp服務(wù)功能,如qq郵箱設(shè)置里面的賬戶選項卡里面把需要的功能勾上:

其他郵箱的話原理一樣~~~~~~

using System;
using System.Collections.Generic;
using System.Linq;
using System.Net.Mail;
using System.Web;
namespace MailSend
{
  public class SendEmail
  {
    /// <summary>
    /// 群發(fā)郵件函數(shù)
    /// </summary>
    /// <param name="subject">發(fā)送的主題</param>
    /// <param name="body">發(fā)送的內(nèi)容</param>
    /// <param name="email_list">收件人列表,通過|來分割開來,可以自己定義</param>
    /// <param name="File_Path">發(fā)送附件的地址,獲取了路徑后上傳</param>
    public static void Send(string subject, string body, string email_list, string File_Path)
    {
      string MailUser = "XXX@qq.com";//我測試的是qq郵箱,其他郵箱一樣的道理
      string MailPwd = "你的密碼";//郵箱密碼
      string MailName = "測試";
      string MailHost = "smtp.exmail.qq.com";//根據(jù)自己選擇的郵箱來查詢smtp的地址
      MailAddress from = new MailAddress(MailUser, MailName); //郵件的發(fā)件人
      MailMessage mail = new MailMessage();
      //設(shè)置郵件的標題
      mail.Subject = subject;
      //設(shè)置郵件的發(fā)件人
      //Pass:如果不想顯示自己的郵箱地址,這里可以填符合mail格式的任意名稱,真正發(fā)mail的用戶不在這里設(shè)定,這個僅僅只做顯示用
      mail.From = from;
      //設(shè)置郵件的收件人
      string address = "";
      //傳入多個郵箱,用“|”分割開,可以自己自定義,再通過mail.To.Add()添加到列表
      string[] email = email_list.Split('|');
      foreach (string name in email)
      {
        if (name != string.Empty)
        {
          address = name;
          mail.To.Add(new MailAddress(address));
        }
      }
      //設(shè)置郵件的抄送收件人
      //這個就簡單多了,如果不想快點下崗重要文件還是CC一份給領(lǐng)導比較好
      //mail.CC.Add(new MailAddress("Manage@hotmail.com", "尊敬的領(lǐng)導");
      //設(shè)置郵件的內(nèi)容
      mail.Body = body;
      //設(shè)置郵件的格式
      mail.BodyEncoding = System.Text.Encoding.UTF8;
      mail.IsBodyHtml = true;
      //設(shè)置郵件的發(fā)送級別
      mail.Priority = MailPriority.Normal;
      //設(shè)置郵件的附件,將在客戶端選擇的附件先上傳到服務(wù)器保存一個,然后加入到mail中
      if (File_Path != "")
      {
        mail.Attachments.Add(new Attachment(File_Path));
        mail.DeliveryNotificationOptions = DeliveryNotificationOptions.OnSuccess;
      }
      SmtpClient client = new SmtpClient();
      //設(shè)置用于 SMTP 事務(wù)的主機的名稱,填I(lǐng)P地址也可以了
      client.Host = MailHost;
      //設(shè)置用于 SMTP 事務(wù)的端口,默認的是 25
      client.Port = 25;
      client.UseDefaultCredentials = false;
      //這里才是真正的郵箱登陸名和密碼, 我的用戶名為 MailUser ,我的密碼是 MailPwd
      client.Credentials = new System.Net.NetworkCredential(MailUser, MailPwd);
      client.DeliveryMethod = SmtpDeliveryMethod.Network;
      ////如果發(fā)送失敗,SMTP 服務(wù)器將發(fā)送 失敗郵件告訴我
      mail.DeliveryNotificationOptions = DeliveryNotificationOptions.OnFailure;
      //都定義完了,正式發(fā)送了,很是簡單吧!
      client.Send(mail);
    }
  }
}

更多關(guān)于asp.net相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《asp.net優(yōu)化技巧總結(jié)》、《asp.net字符串操作技巧匯總》、《asp.net操作XML技巧總結(jié)》、《asp.net文件操作技巧匯總》、《asp.net ajax技巧總結(jié)專題》及《asp.net緩存操作技巧總結(jié)》。

希望本文所述對大家asp.net程序設(shè)計有所幫助。

相關(guān)文章

最新評論