Csharp/C#教程:C#使用MailAddress类发送html格式邮件的实例代码分享

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服务发送邮件

标签: 邮件 res dd ss html ddr tm

C语言中全局数组和局部数组的问题

CFileDialog的钩子函数解决对话框的多选之DoModal问题

上述就是C#学习教程:C#使用MailAddress类发送html格式邮件的实例代码分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!

本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

ctvol管理联系方式QQ:251552304

本文章地址:https://www.ctvol.com/cdevelopment/905040.html

(0)
上一篇 2021年10月22日
下一篇 2021年10月22日

精彩推荐