Beispiel #1
0
        /// <summary>
        /// 发送电子邮件
        /// </summary>
        /// <param name="from">发件人</param>
        /// <param name="to">收件人</param>
        /// <param name="cc">抄送人</param>
        /// <param name="subject">主题</param>
        /// <param name="body">正文内容</param>
        /// <param name="mode">方式</param>
        /// <param name="files">附件</param>
        /// <returns>true,成功;false,失败</returns>
        public static bool SendMail(string from, string to, string cc, string subject, string body, IsHtmlFormat mode, params string[] files)
        {
            try
            {
                // 创建电子邮件
                MailMessage mail = new MailMessage();

                // 设置发件人
                mail.From = new MailAddress(from);
                // 设置收件人(逗号分隔)
                if (to != "")
                {
                    string[] tos = to.Split(',');
                    foreach (string t in tos)
                    {
                        // 添加多个收件人
                        mail.To.Add(new MailAddress(t));
                    }
                }
                // 设置抄送人(逗号分隔)
                if (cc != "")
                {
                    string[] ccs = cc.Split(',');
                    foreach (string c in ccs)
                    {
                        // 添加多个抄送人
                        mail.CC.Add(new MailAddress(c));
                    }
                }
                // 设置主题
                mail.Subject = subject;
                // 设置正文内容
                mail.Body = body;
                // 设置邮件格式
                mail.IsBodyHtml = (mode == IsHtmlFormat.Yes);
                // 设置附件
                if (files.Length > 0)
                {
                    foreach (string f in files)
                    {
                        mail.Attachments.Add(new Attachment(f));
                    }
                }

                // 创建邮件服务器类
                SmtpClient smtp = new SmtpClient();
                // 设置SMTP服务器
                // 一般服务器名称为smtp+邮件后缀
                // 如:[email protected]的服务器地址为:smtp.163.com
                if (String.IsNullOrEmpty(ConfigurationHelper.SmtpServer))
                {
                    smtp.Host = "smtp." + from.Substring(from.IndexOf("@") + 1);
                }
                else
                {
                    smtp.Host = ConfigurationHelper.SmtpServer;
                }
                // 设置SMTP的端口
                smtp.Port = 25;
                // 设置服务器的用户名和密码
                smtp.Credentials = new NetworkCredential(
                    ConfigurationHelper.EmailUserName, ConfigurationHelper.EmailUserPassword);

                //smtp.SendCompleted += new SendCompletedEventHandler(smtp_SendCompleted);

                // 发送邮件
                smtp.SendAsync(mail, String.Empty);
            }
            catch (Exception ex)
            {
                return(false);
            }

            return(true);
        }
Beispiel #2
0
 /// <summary>
 /// 发送电子邮件
 /// </summary>
 /// <param name="to">收件人</param>
 /// <param name="cc">抄送人</param>
 /// <param name="subject">主题</param>
 /// <param name="body">正文内容</param>
 /// <param name="mode">方式</param>
 /// <param name="files">附件</param>
 /// <returns>true,成功;false,失败</returns>
 public static bool SendMail(string to, string cc, string subject, string body, IsHtmlFormat mode, params string[] files)
 {
     return(SendMail(ConfigurationHelper.EmailAddress, to, cc, subject, body, mode, files));
 }