C# 如何提高发送邮件的速度?
我在应用程序中使用Smtp客户端发送邮件,发送邮件的速度非常慢。 我的代码是: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
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协议,现在,我想你建议另一个邮件服务器来提高我的速度。如果问题出在邮件服务器本身,那就不是合适的问答网站。试着问或