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

C# 如何提高发送邮件的速度?,c#,.net,email,smtp,C#,.net,Email,Smtp,我在应用程序中使用Smtp客户端发送邮件,发送邮件的速度非常慢。 我的代码是: var smtp = _settingsService.GetSettings().SMTP; var smtpUsername = _settingsService.GetSettings().SMTPUsername; var smtpPassword = _settingsService.GetSettings().SMTPPassword; var smtpPort = _settingsService.Ge

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

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);
}

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

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

向邮件服务器添加更多ram我看到我的web提供商的smtp服务器(discountasp)和hotmail(smtp.live.com)的速度有很大的差异。hotmail似乎在通过smtp发送电子邮件时增加了+-10秒的延迟,只是为了防止将其用于垃圾邮件。请记住,hotmail在创建hotmail帐户时不会进行大量验证(例如,没有请求电话号码),因此许多垃圾邮件发送者在匿名的情况下使用它。我知道它很慢只是因为设置了邮件服务器,但我只有Gmail知道它很慢是因为使用SSL协议,现在,我想你建议另一个邮件服务器来提高我的速度。如果问题出在邮件服务器本身,那就不是合适的问答网站。试着问或