Я использую следующий код для отправки электронного письма с вложением:
// Specify the from and to email address
using (MailMessage mailMessage = new MailMessage("mailbox@gmail.com", To))
{
// Specify the email body
mailMessage.IsBodyHtml = true;
mailMessage.Body = body;
// Specify the email Subject
mailMessage.Subject = subject;
// No need to specify the SMTP settings as these
// are already specified in web.config
SmtpClient smtpClient = new SmtpClient();
// Finall send the email message using Send() method
mailMessage.Attachments.Add(new Attachment(ms, nombreDoc + ".xlsx", "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"));
smtpClient.Send(mailMessage);
}
Все работает хорошо, но почта слишком задерживается, чтобы прибыло . Я написал в теле время с DateTime.Now.ToString("HH:mm:ss tt")
, чтобы проверить время отправки, и почта достигает 5 минут или даже 30, чтобы добраться до почтового ящика. В чем может быть проблема, что я могу сделать, чтобы удалить задержку или, по крайней мере, убедиться, что задержка составляет точный промежуток времени.
Для вложения я создаю Excel документ с библиотекой EPPLUS. А вот и Web.Config:
<mailSettings>
<smtp deliveryMethod="Network" >
<network host="smtp.gmail.com" enableSsl="true" port="587"
userName="example@gmail.com" password="password"/>
</smtp>
</mailSettings>