如何提高发送邮件的速度?

时间:2015-02-06 01:50:54

标签: c# .net email smtp

我在我的应用程序中使用Smtp Client发送邮件,发送邮件的速度非常慢。 我的代码是:

var smtp = _settingsService.GetSettings().SMTP;
var smtpUsername = _settingsService.GetSettings().SMTPUsername;
var smtpPassword = _settingsService.GetSettings().SMTPPassword;
var smtpPort = _settingsService.GetSettings().SMTPPort;
var smtpEnableSsl = _settingsService.GetSettings().SMTPEnableSSL;

if (string.IsNullOrEmpty(smtp))
{
    return;
}
else
{
    var mySmtpClient = new System.Net.Mail.SmtpClient(smtp);
    if (!string.IsNullOrEmpty(smtpUsername) && !string.IsNullOrEmpty(smtpPassword))
    {
        mySmtpClient.Credentials = new NetworkCredential(smtpUsername, smtpPassword);
    }

    if (smtpEnableSsl != null)
    {
        mySmtpClient.EnableSsl = (bool)smtpEnableSsl;
    }

    if (!string.IsNullOrEmpty(smtpPort))
    {
        mySmtpClient.Port = Convert.ToInt32(smtpPort);
    }


        if (defaultEmail != null)
        {
            var msg = new MailMessage
            {
                IsBodyHtml = true,
                Body = defaultEmail.Body,
                From = new MailAddress(defaultEmail.EmailFrom),
                Subject = defaultEmail.Subject
            };
            msg.To.Add(defaultEmail.EmailTo);
            mySmtpClient.Send(msg);
}

我想知道,什么是最高速发送邮件或如何提高发送邮件速度的最佳方法?

1 个答案:

答案 0 :(得分:1)

这是非常基本的代码,它可能只是因为I / O(网络,smtp服务器本身)而变慢。您唯一能做的就是在应用程序中使用异步和/或并行性

相关问题