asp.net发送邮件带格式(本demo发送验证码)

 public ActionResult Mail(string email, string userName)
        {
            try
            {
                MailSender mail = new MailSender();
                Random r = new Random();
                int temp = r.Next(123456, 999999);
                Session["yzm"] = temp;
                Session.Timeout = 30;
                HtmlDocument htmlDocument = new HtmlDocument();
                htmlDocument.Load(Server.MapPath("/demo.html"));
                //*[@id="userName"]
                //*[@id="yzm"]
                HtmlNode userName_Node = htmlDocument.DocumentNode.SelectSingleNode("//*[@id='userName']");
                HtmlNode yzm = htmlDocument.DocumentNode.SelectSingleNode("//*[@id='yzm']");
                userName_Node.InnerHtml = userName;
                yzm.InnerHtml = temp.ToString();
                string content = htmlDocument.DocumentNode.InnerHtml;
                /// </summary>
                /// <param name="from">发送人邮件地址</param> 
                /// <param name="fromname">发送人显示名称</param> 
                /// <param name="to">发送给谁(邮件地址)</param> 
                /// <param name="subject">标题</param> 
                /// <param name="body">内容</param> 
                /// <param name="username">邮件登录名</param> 
                /// <param name="password">邮件密码</param> 
                /// <param name="server">邮件服务器</param> 
                /// <param name="fujian">附件</param> 
                ///  /// <returns>send ok</returns> 
                string returnValue = mail.SendMail(
                    "admin@haoidea.wang",
                    "X6系统管理员",
                    email,
                    "X6系统 帐号找回密码",
                    content,
                    "admin@haoidea.wang",
                    "haoidea2016..",
                    "smtp.ym.163.com", "");
                if (returnValue == "ok")
                {
                    return Content(JsonConvert.SerializeObject(new
                    {
                        Code = 1,
                        Status = "success"
                    }), "application/json");
                }
                else
                {
                    return Content(JsonConvert.SerializeObject(new
                    {
                        Code = 0,
                        Status = "fail"
                    }), "application/json");
                }
            }
            catch (Exception e)
            {

                return Content(JsonConvert.SerializeObject(new
                {
                    Code = 0,
                    Status = e.Message
                }), "application/json");
            }


        }
using System;
using System.Text;
using System.Xml;
using System.Configuration;
using System.Web;
using System.IO;
using System.Net;
using System.Net.Mail;

namespace DotNet.Utilities
{
    public class MailSender
    {

        /// <summary> 


        /// 发送邮件程序 


        /// </summary> 


        /// <param name="from">发送人邮件地址</param> 


        /// <param name="fromname">发送人显示名称</param> 


        /// <param name="to">发送给谁(邮件地址)</param> 


        /// <param name="subject">标题</param> 


        /// <param name="body">内容</param> 


        /// <param name="username">邮件登录名</param> 


        /// <param name="password">邮件密码</param> 


        /// <param name="server">邮件服务器</param> 


        /// <param name="fujian">附件</param> 


        /// <returns>send ok</returns> 


        /// 调用方法 SendMail("abc@126.com", "某某人", "cba@126.com", "你好", "我测试下邮件", "邮箱登录名", "邮箱密码", "smtp.126.com", ""); 


        public string SendMail(string from, string fromname, string to, string subject, string body, string username, string password, string server, string fujian)
        {

            try
            {

                //邮件发送类 


                MailMessage mail = new MailMessage();

                //是谁发送的邮件 


                mail.From = new MailAddress(from, fromname);

                //发送给谁 


                mail.To.Add(to);

                //标题 


                mail.Subject = subject;

                //内容编码 


                mail.BodyEncoding = Encoding.Default;

                //发送优先级 


                mail.Priority = MailPriority.High;

                //邮件内容 


                mail.Body = body;

                //是否HTML形式发送 


                mail.IsBodyHtml = true;

                //附件 


                if (fujian.Length > 0)
                {

                    mail.Attachments.Add(new Attachment(fujian));

                }

                //邮件服务器和端口 


                SmtpClient smtp = new SmtpClient(server, 25);

                smtp.UseDefaultCredentials = true;

                //指定发送方式 


                smtp.DeliveryMethod = SmtpDeliveryMethod.Network;

                //指定登录名和密码 


                smtp.Credentials = new System.Net.NetworkCredential(username, password);

                //超时时间 


                smtp.Timeout = 10000;

                smtp.Send(mail);

                return "ok";

            }

            catch (Exception exp)
            {

                return exp.Message;

            }

        }
    }
}
<!DOCTYPE html>
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title></title>
    <meta charset="utf-8" />

</head>
<body>
    <div class="qmbox qm_con_body_content qqmail_webmail_only" id="mailContentContainer" style="">
        <style type="text/css">
            .qmbox body {
                margin: 0;
                padding: 0;
                background: #fff;
                font-family: "Verdana, Arial, Helvetica, sans-serif";
                font-size: 14px;
                line-height: 24px;
            }

            .qmbox div, .qmbox p, .qmbox span, .qmbox img {
                margin: 0;
                padding: 0;
            }

            .qmbox img {
                border: none;
            }

            .qmbox .contaner {
                margin: 0 auto;
            }

            .qmbox .title {
                margin: 0 auto;
                background: url() #CCC repeat-x;
                height: 30px;
                text-align: center;
                font-weight: bold;
                padding-top: 12px;
                font-size: 16px;
            }

            .qmbox .content {
                margin: 4px;
            }

            .qmbox .biaoti {
                padding: 6px;
                color: #000;
            }

            .qmbox .xtop, .qmbox .xbottom {
                display: block;
                font-size: 1px;
            }

            .qmbox .xb1, .qmbox .xb2, .qmbox .xb3, .qmbox .xb4 {
                display: block;
                overflow: hidden;
            }

            .qmbox .xb1, .qmbox .xb2, .qmbox .xb3 {
                height: 1px;
            }

            .qmbox .xb2, .qmbox .xb3, .qmbox .xb4 {
                border-left: 1px solid #BCBCBC;
                border-right: 1px solid #BCBCBC;
            }

            .qmbox .xb1 {
                margin: 0 5px;
                background: #BCBCBC;
            }

            .qmbox .xb2 {
                margin: 0 3px;
                border-width: 0 2px;
            }

            .qmbox .xb3 {
                margin: 0 2px;
            }

            .qmbox .xb4 {
                height: 2px;
                margin: 0 1px;
            }

            .qmbox .xboxcontent {
                display: block;
                border: 0 solid #BCBCBC;
                border-width: 0 1px;
            }

            .qmbox .line {
                margin-top: 6px;
                border-top: 1px dashed #B9B9B9;
                padding: 4px;
            }

            .qmbox .neirong {
                padding: 6px;
                color: #666666;
            }

            .qmbox .foot {
                padding: 6px;
                color: #777;
            }

            .qmbox .font_darkblue {
                color: #006699;
                font-weight: bold;
            }

            .qmbox .font_lightblue {
                color: #008BD1;
                font-weight: bold;
            }

            .qmbox .font_gray {
                color: #888;
                font-size: 12px;
            }
        </style>
        <div class="contaner">
            <div class="title">[X6] 密码重置</div>
            <div class="content">
                <p class="biaoti"><b>亲爱的用户,你好!</b></p>
                <b class="xtop"><b class="xb1"></b><b class="xb2"></b><b class="xb3"></b><b class="xb4"></b></b>
                <div class="xboxcontent">
                    <div class="neirong">
                        <p><b>请核对你的用户名:</b><span id="userName" class="font_darkblue">gaocongdehao</span></p>
                        <p><b>重置密码的验证码:</b><span class="font_lightblue"><span id="yzm" data="450794" onclick="return false;" t="7" style="border-bottom: 1px dashed rgb(204, 204, 204); z-index: 1; position: static;">450794</span></span><br><span class="font_gray">(请输入该验证码完成密码找回,验证码30分钟内有效!)</span></p>
                        <div class="line">如果你未申请重置密码服务,请忽略该邮件。</div>
                    </div>
                </div>
                <b class="xbottom"><b class="xb4"></b><b class="xb3"></b><b class="xb2"></b><b class="xb1"></b></b>
                <p class="foot">如果仍有问题,请拨打我们的会员服务专线: <span data="800-820-5100" onclick="return false;" t="7" style="border-bottom: 1px dashed rgb(204, 204, 204); z-index: 1; position: static;">021-51875288
</span></p>
            </div>
        </div>
        <style type="text/css">
            .qmbox style, .qmbox script, .qmbox head, .qmbox link, .qmbox meta {
                display: none !important;
            }
        </style>
    </div>
</body>
</html>

 

依赖:

HtmlAgilityPack

 

posted @ 2017-03-09 09:49  小小高  阅读(1380)  评论(0编辑  收藏  举报