Я пытаюсь отправить электронную почту программно на С#, но я не нахожу, чего мне не хватает. Вот код для того же
string SendEmail(string toAddress, string subject, string body, string senderID)
{
string result = "Message Sent Successfully..!!";
const string senderPassword = "mypassword";
try
{
SmtpClient smtp = new SmtpClient
{
Host = "smtp.gmail.com",
Port = 587,
EnableSsl = true,
DeliveryMethod = SmtpDeliveryMethod.Network,
Credentials = new System.Net.NetworkCredential(senderID, senderPassword),
Timeout = 30000,
};
MailMessage message = new MailMessage(senderID, toAddress, subject, body);
smtp.Send(message);
}
catch (SmtpException e)
{
result = "Smtp status code " + e.StatusCode;
}
catch (Exception ex)
{
result ="Error sending email " +ex.ToString();
}
return result;
}
Я попытался увидеть значение внутри переменной результата, оно имеет два значения
- Код состояния smtp Общий сбой
- Срок действия операции истек // Если мы прокомментируем код catch (SmtpException e)
Если я посмотрю на веб-сайте msdn код состояния SMTP «Общая ошибка» интерпретация кода состояния smtp мы обнаружим, что код состояния означает, что хост не может быть найден, и я попытался выполнить nslookup, а хост "smtp.gmail.com" доступен и доступен из телнета.
Чего мне не хватает в программе?