发送邮件 - SendByNetMail

2017-02-26 15:55:59  访问(1335) 赞(0) 踩(0)


        /// <summary>
        /// 发送邮件 - SendByNetMail
        /// </summary>
        /// <param name="fromShowName">发送人的邮箱帐号</param>
        /// <param name="fromSmtpServer">SMTP服务</param>
        /// <param name="fromEmailName">验证用户名(发送人的邮箱帐号:比如gzyy@gzycit.com)</param>
        /// <param name="fromEmailPwd">邮箱密码</param>
        /// <param name="mailTitle">邮件标题</param>
        /// <param name="mailBody">邮件内容</param>
        /// <param name="toEmailName">接收人邮箱帐号</param>
        /// <param name="mailEncoding">邮件编码</param>
        /// <param name="bIsHtml">是否HTML格式</param>
        /// <param name="strErrMsg">返回的提示</param>
        /// <returns>true:成功;false:失败</returns>
        public static bool SendByNetMail
            (
                string fromShowName,
                string fromSmtpServer,
                string fromEmailName,
                string fromEmailPwd,
                string mailTitle,
                string mailBody,
                string toEmailName,
                System.Text.Encoding mailEncoding,
                bool bIsHtml,
                out string strErrMsg
            )
        {
            strErrMsg = "";


            if (toEmailName == null || toEmailName.Length == 0)
            {
                strErrMsg = "接收地址为空。";
                return false;
            }

            // smtp验证类
            System.Net.Mail.SmtpClient _smtpClient = null;

            // Email消息
            System.Net.Mail.MailMessage _mailMessage = null;

            try
            {
                // smtp验证类
                _smtpClient = new System.Net.Mail.SmtpClient();

                // 指定电子邮件发送方式
                _smtpClient.DeliveryMethod = System.Net.Mail.SmtpDeliveryMethod.Network;

                // 指定SMTP服务器
                _smtpClient.Host = fromSmtpServer;


                _smtpClient.Credentials = new System.Net.NetworkCredential(fromEmailName, fromEmailPwd);

                // Email消息 //
                _mailMessage = new System.Net.Mail.MailMessage();

                string[] toEmailArray = toEmailName.Split(';');

                if (toEmailName != null)
                {
                    string strTmp = "";

                    foreach (string s in toEmailArray)
                    {
                        if (s == null)
                            continue;

                        strTmp = s.Trim();

                        if (strTmp.Length == 0)
                            continue;

                        // 接收Email
                        _mailMessage.To.Add(strTmp);
                    }
                }

                _mailMessage.From = new System.Net.Mail.MailAddress(fromEmailName, fromShowName);

                //主题
                _mailMessage.Subject = mailTitle;

                //内容
                _mailMessage.Body = mailBody;

                //正文编码
                _mailMessage.BodyEncoding = mailEncoding;
                _mailMessage.SubjectEncoding = mailEncoding;


                //设置为HTML格式
                _mailMessage.IsBodyHtml = bIsHtml;

                //优先级
                _mailMessage.Priority = System.Net.Mail.MailPriority.High;



                _smtpClient.Send(_mailMessage); //发送邮件 
            }
            catch (Exception err)
            {
                strErrMsg = err.Message;

                return false;
            }
            finally
            {
                if (_mailMessage != null)
                    _mailMessage = null;

                if (_smtpClient != null)
                    _smtpClient = null;
            }

            return true;

        }


标签:发送邮件 - SendByNetMail 

上一条:

下一条:


 

相关评论

评论加载中……
 

发表评论

类型:
内容:
  (Alt+Enter)
 
  ┈全部┈  
 
(显示默认分类)