Send html Email

本文介绍了一种使用C#语言实现发送HTML格式电子邮件的方法。通过配置SMTP客户端并利用WebRequest获取HTML内容作为邮件正文,实现了从指定URL读取HTML内容并将其作为邮件正文发送的功能。

 using System.Net.Mail;
using System.Net;
using System.IO;
using System.Text;

 

///

 

protected void SendEmail(DataSet ds)
    {

        MailMessage regMsg = new MailMessage();
        regMsg.From = new MailAddress(ConfigurationManager.AppSettings["SendFrom"].ToString(), ConfigurationManager.AppSettings["sender"].ToString(), System.Text.Encoding.UTF8);
        regMsg.To.Add(txtEmil.Text);
        regMsg.Subject = "Successful registration";
        regMsg.ReplyTo = new MailAddress(ConfigurationManager.AppSettings["ReplyTo"].ToString(), ConfigurationManager.AppSettings["sender"].ToString());

        //regMsg.Body = "<h2>This is an HTML-Formatted Email Send Using the <code>IsBodyHtml</code>=Property</h2><p>Isn't HTML <em>neat</em>?</p><p>You can make all sorts=of <span style=3D'color:red;font-weight:bold;'>pretty colors!!</span>.</p>";
        //regMsg.Body = "<iframe src='http://www.baidu.com'></iframe>";
        regMsg.IsBodyHtml = true;
        regMsg.BodyEncoding = Encoding.UTF8;


        // method 1

        WebRequest therequest = WebRequest.Create(ConfigurationManager.AppSettings["sendUri"].ToString());
        WebResponse theresponse = therequest.GetResponse();
        Stream thestream = theresponse.GetResponseStream();
        StreamReader sr = new StreamReader(thestream, System.Text.Encoding.Default);
        regMsg.Body = sr.ReadToEnd();
        sr.Close();
        thestream.Close();  

        //method 2

        //WebClient wc = new WebClient();
        //wc.Credentials = CredentialCache.DefaultCredentials;
        //Byte[] pageData = wc.DownloadData(ConfigurationManager.AppSettings["sendUri"].ToString());
        //regMsg.Body = Encoding.Default.GetString(pageData);
        //wc.Dispose();

        //SmtpClient client = new SmtpClient("localhost");
        //client.UseDefaultCredentials = true;

        //method 3

        //MailMessage message = new MailMessage(ConfigurationManager.AppSettings["SendFrom"].ToString(), txtEmil.Text);
        //message.Subject = "Successful registration";
        //message.IsBodyHtml = true;

        //message.BodyEncoding = Encoding.UTF8;
        //SmtpClient client = new SmtpClient(ConfigurationManager.AppSettings["EmailServer"].ToString());

        //WebRequest therequest = WebRequest.Create(ConfigurationManager.AppSettings["sendUri"].ToString());
        //WebResponse theresponse = therequest.GetResponse();
        //Stream thestream = theresponse.GetResponseStream();
        //StreamReader sr = new StreamReader(thestream, System.Text.Encoding.Default);
        //message.Body = sr.ReadToEnd();
        //sr.Close();
        //thestream.Close();  

        //client.Send(message);

        SmtpClient client = new SmtpClient();
        //client.Host = "localhost";
        client.Credentials = CredentialCache.DefaultNetworkCredentials;
        //object userState = regMsg;
       
        try
        {
            //client.SendAsync(regMsg, userState);
            client.Send(regMsg);
        }
        catch
        {
           
        }

 }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值