Пример #1
0
 /// <summary>
 /// Save SMTP settings to web.config.
 /// </summary>
 /// <param name="smtp">The SmtpSetting object.</param>
 public static void Save(SmtpSettings smtp)
 {
     var xdoc = new XmlDocument();
     var filename = HttpContext.Current.Server.MapPath("~/Web.config");
     xdoc.Load(filename);
     var smtpSeciton = xdoc.SelectSingleNode("configuration/system.net/mailSettings/smtp");
     var netSection = xdoc.SelectSingleNode("configuration/system.net/mailSettings/smtp/network");
     var network = netSection;//xmlDoc.DocumentElement.SelectSingleNode("network");
     network.Attributes["port"].Value = smtp.Port.ToString();
     network.Attributes["userName"].Value = smtp.UserName;
     network.Attributes["password"].Value = smtp.Password;
     network.Attributes["host"].Value = smtp.Host;
     network.Attributes["enableSsl"].Value = smtp.EnableSsl.ToString().ToLower();
     network.Attributes["defaultCredentials"].Value = smtp.DefaultCredentials.ToString().ToLower();
     xdoc.Save(filename);
 }
Пример #2
0
        private static MailMessage GetMailMessage(Message message, SmtpSettings smtpConfig)
        {
            var mailMsg = new MailMessage();

            if (!string.IsNullOrEmpty(smtpConfig.DisplayName))
                mailMsg.From = new MailAddress(smtpConfig.From, smtpConfig.DisplayName);

            foreach (var addr in message.To)
            {
                if (string.IsNullOrEmpty(addr.DisplayName))
                    mailMsg.To.Add(addr.Email);
                else
                    mailMsg.To.Add(new MailAddress(addr.Email, addr.DisplayName));
            }

            mailMsg.SubjectEncoding = Encoding.UTF8;
            mailMsg.BodyEncoding = Encoding.UTF8;
            mailMsg.Subject = message.Subject;
            mailMsg.Body = message.Body;
            mailMsg.IsBodyHtml = message.ContentType.Equals("text/html");
            return mailMsg;
        }