Beispiel #1
0
        public static MailSenderConfiguration MakeMailSenderConfiguration(
            IConfiguration configuration,
            string rootPath)
        {
            if (configuration.UseSmtp)
            {
                var mailSenderConfiguration = new MailSenderConfiguration
                {
                    DeliveryMethod = SmtpDeliveryMethod.Network,
                    Host = configuration.SmtpHost,
                    Port = configuration.SmtpPort,
                    EnableSsl = true
                };

                if (!String.IsNullOrWhiteSpace(configuration.SmtpUsername))
                {
                    mailSenderConfiguration.UseDefaultCredentials = false;
                    mailSenderConfiguration.Credentials = new NetworkCredential(
                        configuration.SmtpUsername,
                        configuration.SmtpPassword);
                }

                return mailSenderConfiguration;
            }
            else
            {
                var mailSenderConfiguration = new MailSenderConfiguration
                {
                    DeliveryMethod = SmtpDeliveryMethod.SpecifiedPickupDirectory,
                    PickupDirectoryLocation = Path.Combine(rootPath, "App_Data", "Mail")
                };

                return mailSenderConfiguration;
            }
        }
 static internal void ConfigureSmtpClient(
     ISmtpClient smtpClient,
     MailSenderConfiguration configuration)
 {
     if (configuration.Host != null)
     {
         smtpClient.Host = configuration.Host;
     }
     if (configuration.Port.HasValue)
     {
         smtpClient.Port = configuration.Port.Value;
     }
     if (configuration.EnableSsl.HasValue)
     {
         smtpClient.EnableSsl = configuration.EnableSsl.Value;
     }
     if (configuration.DeliveryMethod.HasValue)
     {
         smtpClient.DeliveryMethod = configuration.DeliveryMethod.Value;
     }
     if (configuration.UseDefaultCredentials.HasValue)
     {
         smtpClient.UseDefaultCredentials = configuration.UseDefaultCredentials.Value;
     }
     if (configuration.Credentials != null)
     {
         smtpClient.Credentials = configuration.Credentials;
     }
     if (configuration.PickupDirectoryLocation != null)
     {
         smtpClient.PickupDirectoryLocation = configuration.PickupDirectoryLocation;
     }
 }
Beispiel #3
0
        internal MailSender(
            ISmtpClient smtpClient,
            MailSenderConfiguration configuration)
        {
            if (smtpClient == null)
                throw new ArgumentNullException("smtpClient");

            if (configuration != null)
                ConfigureSmtpClient(smtpClient, configuration);

            this.smtpClient = smtpClient;
        }
        internal MarkdigMailSender(
            ISmtpClient smtpClient,
            MailSenderConfiguration configuration)
        {
            if (smtpClient == null)
            {
                throw new ArgumentNullException("smtpClient");
            }

            if (configuration != null)
            {
                ConfigureSmtpClient(smtpClient, configuration);
            }

            this.smtpClient = smtpClient;
        }
        public void RegisterDependencies(IDependencyRegistry dependencyRegistry)
        {
            dependencyRegistry.RegisterCreator<IMailSender>(() =>
            {
                var mailSenderConfiguration = new MailSenderConfiguration
                {
                    DeliveryMethod = SmtpDeliveryMethod.SpecifiedPickupDirectory,
                    PickupDirectoryLocation = HttpContext.Current.Server.MapPath("~/App_Data/Mail")
                };

                //var mailSenderConfiguration = new MailSenderConfiguration() {
                //    DeliveryMethod = SmtpDeliveryMethod.Network,
                //    EnableSsl = true,
                //    Host = "smtp.gmail.com",
                //    Port = 587,
                //    UseDefaultCredentials = false,
                //    Credentials = new NetworkCredential("<your-gmail-address>", "<your-gmail-password>")
                //};

                return new MailSender(mailSenderConfiguration);
            });
        }
 public MarkdigMailSender(MailSenderConfiguration configuration)
     : this(new SmtpClientWrapper(new SmtpClient()), configuration)
 {
 }
Beispiel #7
0
        public static void SetMailSenderConfiguration(MailSenderConfiguration mailSenderConfiguration)
        {
            mailSenderConfiguration.Ensure("mailSenderConfiguration");

            _mailSenderConfiguration = mailSenderConfiguration;
        }
Beispiel #8
0
 public MailSender(MailSenderConfiguration configuration)
     : this(new SmtpClientWrapper(new SmtpClient()), configuration)
 {
 }
Beispiel #9
0
 internal static void ConfigureSmtpClient(
     ISmtpClient smtpClient, 
     MailSenderConfiguration configuration)
 {
     if (configuration.Host != null)
         smtpClient.Host = configuration.Host;
     if (configuration.Port.HasValue)
         smtpClient.Port = configuration.Port.Value;
     if (configuration.EnableSsl.HasValue)
         smtpClient.EnableSsl = configuration.EnableSsl.Value;
     if (configuration.DeliveryMethod.HasValue)
         smtpClient.DeliveryMethod = configuration.DeliveryMethod.Value;
     if (configuration.UseDefaultCredentials.HasValue)
         smtpClient.UseDefaultCredentials = configuration.UseDefaultCredentials.Value;
     if (configuration.Credentials != null)
         smtpClient.Credentials = configuration.Credentials;
     if (configuration.PickupDirectoryLocation != null)
         smtpClient.PickupDirectoryLocation = configuration.PickupDirectoryLocation;
 }