zoukankan      html  css  js  c++  java
  • C# Mail 发送邮件

    using System;
    using System.Net.Mail;
    using System.Net;
    
    namespace AmwITx.Framework.Components
    {
        public class MailPass
        {
            /// <summary>
            /// 发送邮件服务器
            /// </summary>
            public string SmtpServer { get; set; }
            /// <summary>
            /// 发送邮箱帐号
            /// </summary>
            public string UserName { get; set; }
            /// <summary>
            /// 发送邮箱密码
            /// </summary>
            public string PassWord { get; set; }
            /// <summary>
            /// 发送地址
            /// </summary>
            public string FromMail { get; set; }
        }
    
        public class MailParameter
        {
            /// <summary>
            /// 邮件主题
            /// </summary>
            public string Subject { get; set; }
            /// <summary>
            /// 发件人公司
            /// </summary>
            public string IncName { get; set; }
            /// <summary>
            /// 接收地址
            /// </summary>
            public string ToMail { get; set; }
            /// <summary>
            /// 抄送"邮箱名,邮箱名......"
            /// </summary>
            public string BccMail { get; set; }
            /// <summary>
            /// 邮件内容
            /// </summary>
            public string MailContent { get; set; }
        }
    
        public class MailService
        {
            /// <summary>
            /// 发送邮件
            /// </summary>
            public static MailResult Send(MailPass pass, MailParameter parameter)
            {
                if (string.IsNullOrEmpty(pass.SmtpServer))
                    throw new Exception("parameter server not null");
                var sendResult = new MailResult();
                try
                {
                    var frommail = parameter.IncName + "<" + pass.FromMail + ">";
                    var mail = new MailMessage(pass.FromMail, parameter.ToMail);
    
                    mail.Subject = parameter.Subject;
                    mail.IsBodyHtml = true;
                    mail.Body = parameter.MailContent;
    
                    //抄送给多人
                    if (!string.IsNullOrEmpty(parameter.BccMail))
                    {
                        var bccmails = parameter.BccMail.Split(',');
                        foreach (var bcc in bccmails)
                        {
                            mail.Bcc.Add(bcc);
                        }
                    }
    
                    mail.Sender = new MailAddress(frommail);
                    mail.SubjectEncoding = System.Text.Encoding.GetEncoding("utf-8");
    
                    var client = new SmtpClient(pass.SmtpServer);
    
                    client.Credentials = new NetworkCredential(pass.UserName, pass.PassWord);
                    client.UseDefaultCredentials = true;
                    client.Send(mail);
    
                    sendResult.IsSuccess = true;
                }
                catch (Exception ex)
                {
                    sendResult.IsSuccess = false;
                    sendResult.ErrorMessage = ex.Message;
                }
                return sendResult;
            }
        }
        public class MailResult
        {
            /// <summary>
            /// 是否发送成功
            /// </summary>
            public bool IsSuccess { get; set; }
            /// <summary>
            /// 错误信息
            /// </summary>
            public string ErrorMessage { get; set; }
            /// <summary>
            /// 字符串
            /// </summary>
            /// <returns></returns>
            public override string ToString()
            {
                return IsSuccess + "|" + ErrorMessage;
            }
        }
    }
  • 相关阅读:
    Vue条件判断
    揭秘webpack plugin
    vue实现网络图片瀑布流 + 下拉刷新 + 上拉加载更多
    npx 是什么?
    PAT 1100 Mars Numbers[难]
    PAT 1075 PAT Judge[比较]
    PAT 1083 List Grades[简单]
    PAT 1082 Read Number in Chinese[难]
    PAT 1135 Is It A Red-Black Tree[难]
    PAT 1127 ZigZagging on a Tree[难]
  • 原文地址:https://www.cnblogs.com/tearer/p/1778254.html
Copyright © 2011-2022 走看看