我在我的应用程序中使用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);
}
我想知道,什么是最高速发送邮件或如何提高发送邮件速度的最佳方法?
答案 0 :(得分:1)
这是非常基本的代码,它可能只是因为I / O(网络,smtp服务器本身)而变慢。您唯一能做的就是在应用程序中使用异步和/或并行性