protected virtual void SendInternal(EmailMessageEntity email) { MailMessage message = CustomCreateMailMessage != null?CustomCreateMailMessage(email) : CreateMailMessage(email); using (HeavyProfiler.Log("SMTP-Send")) EmailLogic.GetSmtpClient(email).Send(message); }
public static SmtpClient GenerateSmtpClient(this SmtpConfigurationEntity config) { if (config.DeliveryMethod != SmtpDeliveryMethod.Network) { return(new SmtpClient { DeliveryFormat = config.DeliveryFormat, DeliveryMethod = config.DeliveryMethod, PickupDirectoryLocation = config.PickupDirectoryLocation, }); } else { SmtpClient client = EmailLogic.SafeSmtpClient(config.Network.Host, config.Network.Port); client.DeliveryFormat = config.DeliveryFormat; client.UseDefaultCredentials = config.Network.UseDefaultCredentials; client.Credentials = config.Network.Username.HasText() ? new NetworkCredential(config.Network.Username, config.Network.Password) : null; client.EnableSsl = config.Network.EnableSSL; foreach (var cc in config.Network.ClientCertificationFiles) { client.ClientCertificates.Add(cc.CertFileType == CertFileType.CertFile ? X509Certificate.CreateFromCertFile(cc.FullFilePath) : X509Certificate.CreateFromSignedFile(cc.FullFilePath)); } return(client); } }
internal static void AssertStarted(SchemaBuilder sb) { sb.AssertDefined(ReflectionTools.GetMethodInfo(() => EmailLogic.Start(null, null, null, null, null, null))); }