利用asp.net实现群发邮件功能

作者:袖梨 2022-06-25

本文实例讲述了asp.net实现的群发邮件功能。分享给大家供大家参考,具体如下:

测试时用的是qq邮箱,成功的前提是要在邮箱设置中打开smtp服务功能,如qq邮箱设置里面的账户选项卡里面把需要的功能勾上:

其他邮箱的话原理一样~~~~~~

代码如下 复制代码

usingSystem;

usingSystem.Collections.Generic;

usingSystem.Linq;

usingSystem.Net.Mail;

usingSystem.Web;

namespaceMailSend

{

publicclassSendEmail

{

///

/// 群发邮件函数

///

///发送的主题

///发送的内容

///收件人列表,通过|来分割开来,可以自己定义

///发送附件的地址,获取了路径后上传

publicstaticvoidSend(stringsubject,stringbody,stringemail_list,stringFile_Path)

{

stringMailUser ="[email protected]";//我测试的是qq邮箱,其他邮箱一样的道理

stringMailPwd ="你的密码";//邮箱密码

stringMailName ="测试";

stringMailHost ="smtp.exmail.qq.com";//根据自己选择的邮箱来查询smtp的地址

MailAddress from =newMailAddress(MailUser, MailName);//邮件的发件人

MailMessage mail =newMailMessage();

//设置邮件的标题

mail.Subject = subject;

//设置邮件的发件人

//Pass:如果不想显示自己的邮箱地址,这里可以填符合mail格式的任意名称,真正发mail的用户不在这里设定,这个仅仅只做显示用

mail.From = from;

//设置邮件的收件人

stringaddress ="";

//传入多个邮箱,用“|”分割开,可以自己自定义,再通过mail.To.Add()添加到列表

string[] email = email_list.Split('|');

foreach(stringnameinemail)

{

if(name !=string.Empty)

{

address = name;

mail.To.Add(newMailAddress(address));

}

}

//设置邮件的抄送收件人

//这个就简单多了,如果不想快点下岗重要文件还是CC一份给领导比较好

//mail.CC.Add(new MailAddress("[email protected]", "尊敬的领导");

//设置邮件的内容

mail.Body = body;

//设置邮件的格式

mail.BodyEncoding = System.Text.Encoding.UTF8;

mail.IsBodyHtml =true;

//设置邮件的发送级别

mail.Priority = MailPriority.Normal;

//设置邮件的附件,将在客户端选择的附件先上传到服务器保存一个,然后加入到mail中

if(File_Path !="")

{

mail.Attachments.Add(newAttachment(File_Path));

mail.DeliveryNotificationOptions = DeliveryNotificationOptions.OnSuccess;

}

SmtpClient client =newSmtpClient();

//设置用于 SMTP 事务的主机的名称,填IP地址也可以了

client.Host = MailHost;

//设置用于 SMTP 事务的端口,默认的是 25

client.Port = 25;

client.UseDefaultCredentials =false;

//这里才是真正的邮箱登陆名和密码, 我的用户名为 MailUser ,我的密码是 MailPwd

client.Credentials =newSystem.Net.NetworkCredential(MailUser, MailPwd);

client.DeliveryMethod = SmtpDeliveryMethod.Network;

////如果发送失败,SMTP 服务器将发送 失败邮件告诉我

mail.DeliveryNotificationOptions = DeliveryNotificationOptions.OnFailure;

//都定义完了,正式发送了,很是简单吧!

client.Send(mail);

}

}

}

希望本文所述对大家asp.net程序设计有所帮助。

相关文章

精彩推荐