zoukankan      html  css  js  c++  java
  • 在.net程序中使用System.Net.Mail来发送邮件

    System.Net.Mail是微软自家提供的工具,在.net程序中可以使用该空间中的SmtpClient实例来实现邮件的发送。

    使用System.Net.Mail空间与Web.config配置相配合,可以很方便的实现邮件发送。

     

    首先,在Web.config文件中<system.net>节点中加入<mailSettings>标签,示例如下:

    <system.net>
        <mailSettings>
          <smtp from="测试者&lt;tester@testserver.com&gt;">
            <network host="smtp.ym.163.com" password="MyTestPassword" port="25"
                userName="tester@testserver.com" enableSsl="false" defaultCredentials="false" />
          </smtp>
        </mailSettings>
    </system.net>

     

    接下来便是C#代码:(需要using System.Net.Mail;)

    /// <summary>
    /// 发送HTML邮件,有抄送和密送
    /// 需要在Web.config文件中的system.net下的mailSettings节点进行配置
    /// </summary>
    /// <param name="mailto">收件人地址</param>
    /// <param name="mailcc">抄送地址</param>
    /// <param name="mailbcc">密送地址</param>
    /// <param name="mailsubject">邮件主题</param>
    /// <param name="mailbody">邮件正文</param>
    public static void SendMail(string mailto, string mailcc, string mailbcc, string mailsubject, string mailbody)
    {
        MailMessage mMessage = new MailMessage();
        MailAddress mTo = new MailAddress(mailto);
        if (mailcc != "") { MailAddress mCC = new MailAddress(mailcc); mMessage.CC.Add(mCC); }
        if (mailbcc != "") { MailAddress mBCC = new MailAddress(mailbcc); mMessage.Bcc.Add(mBCC); }
        mMessage.To.Add(mTo);
        mMessage.Subject = mailsubject;
        //正文和主题的字符编码都设置为UTF8
        mMessage.SubjectEncoding = System.Text.Encoding.UTF8;
        mMessage.BodyEncoding = System.Text.Encoding.UTF8;
        mMessage.Body = mailbody;
        //正文支持html
        mMessage.IsBodyHtml = true;
        SmtpClient client = new SmtpClient();
        client.Send(mMessage);
    }

     

    再接下来就可以在程序任意位置调用SendMail方法来实现发送邮件了:

    SendMail("272023290@qq.com", "", "", "测试20140418-2", "<h1>你好,这是第二封测试邮件</h1>");

     

    如果程序所使用的SMTP服务器不作特殊限制的话,你的收件箱就可以正常收到这封测试邮件了。

    同时,由于我们在Web.config中设置的是“邮件测试者&lt;tester@testserver.com&gt;”,所以收到的邮件的发件人将会是“邮件测试者”。

    本文结束。

  • 相关阅读:
    PHP获取指定的时间戳
    Thinkphp实现excel数据的导出
    ThinkPHP按月统计订单总金额
    PHP获取本月起始和终止时间戳
    ThinkPHP 判断一个更新操作是否成功
    js 通过浏览器直接打开应用程序(IOS,Android)并判断浏览器内核
    ThinkPHP 后台管理删除、编辑操作(通过数组传ID)
    PHP面向对象
    【转】Chrome调试鼠标悬停后出现的元素
    【重要】Selenium2+python自动化44-元素定位参数化(find_element)
  • 原文地址:https://www.cnblogs.com/chenqiang001/p/3673081.html
Copyright © 2011-2022 走看看