GeneralFailure — время ожидания операции истекло
в этой строке кода:
smtpClient.Send(message);
Я проверил, есть ли у сервера соединение с smtp.gmail.com через порт 587, используя следующую команду в PowerShell
Test-NetConnection -ComputerName smtp.gmail.com -Port 587

Кроме того, я пытался запустить службу, используя локальную систему и сетевую службу, но все равно получаю ту же ошибку.
Я не понимаю, почему это продолжает происходить, но я чувствую, что это связано с учетной записью, под которой запущена служба.
using (SmtpClient smtpClient = new SmtpClient())
{
smtpClient.Host = ConfigurationManager.AppSettings["SmtpHost"];//smtp.gmail.com
smtpClient.Port = int.Parse(ConfigurationManager.AppSettings["SmtpPort"]);//587
smtpClient.EnableSsl = bool.Parse(ConfigurationManager.AppSettings["SmtpEnableSsl"]);//true
smtpClient.DeliveryMethod = SmtpDeliveryMethod.Network;
smtpClient.UseDefaultCredentials = false;
smtpClient.Credentials = new NetworkCredential(
ConfigurationManager.AppSettings["SmtpUsername"],
ConfigurationManager.AppSettings["SmtpPassword"]
);
smtpClient.Timeout = 30000;
string fromEmail = ConfigurationManager.AppSettings["EmailFromAddress"];
MailMessage message = new MailMessage
{
From = new MailAddress(fromEmail),
Subject = subject,
Body = emailBody,
IsBodyHtml = true,
BodyEncoding = Encoding.UTF8,
SubjectEncoding = Encoding.UTF8
};
message.To.Add(recipientEmail);
smtpClient.Send(message);
}