分享

C#实现企业邮件发送,支持HTML格式

 行走在理想边缘 2019-03-25
2016年05月12日 09:44:07 忧郁的年华 阅读数:3994
版权声明:本文为博主原创文章。 https://blog.csdn.net/kpgsystem/article/details/51377000

引入命名空间:using System.Net;using System.Net.Mail;

static void Main(string[] args){    //邮件发送对象
    MailClass mailclass = new MailClass();    //邮件STMP服务器地址
    mailclass.MailServer = "smtp.xxx.com";    //收件人邮件地址
    mailclass.MailFrom = "xxx@xxxx.com";    //发件人账号用户
    mailclass.MailUserName = "xxx@xxx.com";    //发件人账号密码
    mailclass.MailUserPassword = "xxx";    //邮件编码格式
    mailclass.MailCharset = "utf-8";

    SendMailMethod(mailclass);
}
/// <summary>/// 发送邮件信息/// </summary>/// <param name="mailclass"></param>
 public static void SendMailMethod(MailClass mailclass){    try
    {
        MailMessage mail = new MailMessage();        //收件人
        mail.From = 
        new MailAddress(mailclass.MailFrom, "", Encoding.GetEncoding(mailclass.MailCharset));        //发送人
        mail.Sender = 
        new MailAddress(mailclass.MailFrom, "", Encoding.GetEncoding(mailclass.MailCharset));
        mail.To.Add("xxx@xxx.com"); //发件人
        mail.SubjectEncoding = Encoding.GetEncoding(mailclass.MailCharset);
        mail.Subject = "报表分析";
        mail.BodyEncoding = Encoding.GetEncoding(mailclass.MailCharset);
        mail.Priority = MailPriority.Normal;        //是否为网页格式
        mail.IsBodyHtml = true;

        SmtpClient SmtpMail = new SmtpClient(mailclass.MailServer);
        SmtpMail.UseDefaultCredentials = true;
        SmtpMail.DeliveryMethod = SmtpDeliveryMethod.Network;
        SmtpMail.EnableSsl = false;        //smtp主机上的端口号,默认是25
        SmtpMail.Port = 25;        //验证发件人身份
        SmtpMail.Credentials = 
        new NetworkCredential(mailclass.MailUserName, mailclass.MailUserPassword);        //邮件的内容可以是一个html文本.
        string filePath = AppDomain.CurrentDomain.BaseDirectory + "../../test.html";
        System.IO.StreamReader read = 
        new System.IO.StreamReader(filePath, System.Text.Encoding.GetEncoding("GB2312"));        string mailBody = read.ReadToEnd();        //邮件内容
        mail.Body = mailBody;
        SmtpMail.Send(mail);        //释放附件对象,否则文件无法删除
        foreach (Attachment item in mail.Attachments)
        {
            item.Dispose();
        }
        SmtpMail.Dispose();

    }    catch (Exception ex)
    {

        Console.Write(ex.Message);

    }
}

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多