1.首先引入命名空间usingSystem.Net.Mail;
2.将发送的邮件的功能封装成一个类,该类中包含了发送邮件的基本功能:收件人(多人),抄送(多人),发送人,主题,邮件正文,附件等,封装的Email类如下:
代码如下:
publicclassEmail
{
///<summary>
///发送者
///</summary>
publicstringmailFrom{get;set;}
///<summary>
///收件人
///</summary>
publicstring[]mailToArray{get;set;}
///<summary>
///抄送
///</summary>
publicstring[]mailCcArray{get;set;}
///<summary>
///标题
///</summary>
publicstringmailSubject{get;set;}
///<summary>
///正文
///</summary>
publicstringmailBody{get;set;}
///<summary>
///发件人密码
///</summary>
publicstringmailPwd{get;set;}
///<summary>
///SMTP邮件服务器
///</summary>
publicstringhost{get;set;}
///<summary>
///正文是否是html格式
///</summary>
publicboolisbodyHtml{get;set;}
///<summary>
///附件
///</summary>
publicstring[]attachmentsPath{get;set;}
publicboolSend()
{
//使用指定的邮件地址初始化MailAddress实例
MailAddressmaddr=newMailAddress(mailFrom);
//初始化MailMessage实例
MailMessagemyMail=newMailMessage();
//向收件人地址集合添加邮件地址
if(mailToArray!=null)
{
for(inti=0;i<mailToArray.Length;i++)
{
myMail.To.Add(mailToArray[i].ToString());
}
}
//向抄送收件人地址集合添加邮件地址
if(mailCcArray!=null)
{
for(inti=0;i<mailCcArray.Length;i++)
{
myMail.CC.Add(mailCcArray[i].ToString());
}
}
//发件人地址
myMail.From=maddr;
//电子邮件的标题
myMail.Subject=mailSubject;
//电子邮件的主题内容使用的编码
myMail.SubjectEncoding=Encoding.UTF8;
//电子邮件正文
myMail.Body=mailBody;
//电子邮件正文的编码
myMail.BodyEncoding=Encoding.Default;
myMail.Priority=MailPriority.High;
myMail.IsBodyHtml=isbodyHtml;
//在有附件的情况下添加附件
try
{
if(attachmentsPath!=null&&attachmentsPath.Length>0)
{
AttachmentattachFile=null;
foreach(stringpathinattachmentsPath)
{
attachFile=newAttachment(path);
myMail.Attachments.Add(attachFile);
}
}
}
catch(Exceptionerr)
{
thrownewException(“在添加附件时有错误:”+err);
}
SmtpClientsmtp=newSmtpClient();
//指定发件人的邮件地址和密码以验证发件人身份
smtp.Credentials=newSystem.Net.NetworkCredential(mailFrom,mailPwd);
//设置SMTP邮件服务器
smtp.Host=host;
try
{
//将邮件发送到SMTP邮件服务器
smtp.Send(myMail);
returntrue;
}
catch(System.Net.Mail.SmtpExceptionex)
{
returnfalse;
}
}
}
3.页面调用发送邮件的类
代码如下:
protectedvoidSend_Click(objectsender,EventArgse)
{
Emailemail=newEmail();
email.mailFrom=”发送人的邮箱地址”;
email.mailPwd=”发送人邮箱的密码”;
email.mailSubject=”邮件主题”;
email.mailBody=”邮件内容”;
email.isbodyHtml=true; //是否是HTML
email.host=”smtp.126.com”;//如果是QQ邮箱则:smtp:qq.com,依次类推
email.mailToArray=newstring[]{“******@qq.com”,”12345678@qq.com”};//接收者邮件集合
email.mailCcArray=newstring[]{“******@qq.com”};//抄送者邮件集合
if(email.Send())
{
Response.Write(“<scripttype=’text/javascript’>alert(‘发送成功!’);history.go(-1)</script>”);//发送成功则提示返回当前页面;
}
else
{
Response.Write(“<scripttype=’text/javascript’>alert(‘发送失败!’);history.go(-1)</script>”);
}
}
您可能感兴趣的文章:C#实现发送邮件的三种方法C#邮件发送和接收实现代码c#调用qq邮箱smtp发送邮件修改版代码分享C#通过POP3获取邮件的代码(正文和附件)C#中发送邮件代码C#邮件地址是否合法的验证C#实现SMTP邮件发送程序实例C#.NET采用HTML模板发送电子邮件完整实例c#实现服务器性能监控并发送邮件保存日志C#使用windows服务发送邮件
C语言中全局数组和局部数组的问题
CFileDialog的钩子函数解决对话框的多选之DoModal问题
上述就是C#学习教程:C#使用MailAddress类发送html格式邮件的实例代码分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/cdevelopment/905040.html