У меня есть код,
System.Web.Mail.MailMessage oMailMessage = new MailMessage();
oMailMessage.From = strFromEmaild;
oMailMessage.To = strToEmailId;
oMailMessage.Subject = strSubject;
oMailMessage.Body = strBody;
SmtpMail.SmtpServer = "localhost";
SmtpMail.Send(oMailMessage);
(все переменные имеют значения),
Я установил SMTP виртуальные сервисы. почему это не может послать электронные письма. почему это не работает??
Править
public bool SendMail(string strToEmailId, string strFromEmaild, string strSubject, string strBody)
{
try
{
System.Web.Mail.MailMessage oMailMessage = new MailMessage();
oMailMessage.From = strFromEmaild;
oMailMessage.To = strToEmailId;
oMailMessage.Subject = strSubject;
oMailMessage.Body = strBody;
SmtpMail.SmtpServer = "SERVERNAME";
SmtpMail.Send(oMailMessage);
return true;
}
catch (Exception ex)
{
return false;
}
}
У меня есть этот код. Это выполняет прекрасный и возвращает true, но я не получаю электронной почты в ящике входящих сообщений.
Я нашел, что почта только может посланный на счета Gmail..., почему это?
Определите, какая ошибка:
try
{
SmtpMail.Send(oMailMessage);
}
catch (Exception ex)
{
//breakpoint here to determine what the error is:
Console.WriteLine(ex.Message);
}
отсюда, пожалуйста, отредактируйте свой вопрос с этим деталями исключения.
Как уже упоминалось с другими, ваш код в порядке, и, скорее всего, что-то в вашей SMTP-конфигурации или, может быть, ваш почтовый клиент ваш отправка ваших тестовых электронных писем, отмечается их как спам. Если это спам, хорошо, это легкая выяснить enugeo. Если это что-то с электронной почтой, вы можете перейти к папке MailRoot, и их будут несколько папок с файлами электронной почты вместе с описанием. Посмотрите, есть ли в папке Badmail или папку очереди и откройте их в блокноте и просмотрите, какую ошибку приведено, почему они не отправлены.
Трудно сказать, но одна возможность заключается в том, что вы не включали анонимный доступ на виртуальном сервере SMTP. Перейдите в диалоговое окно «Свойства Virtual Server», выберите вкладку «Доступ», нажмите кнопку управления доступом, и убедитесь, что анонимный доступ включен.
Вы пробовали 127.0.0.1 вместо localhost? Также вы протестировали, что служба SMTP работает, ознакомьтесь с этой ссылкой .
Похоже, что с вашей программой что-то не так. Вероятно, это проблема конфигурации между вашей программой и почтовым сервером. Я бы попробовал следующее, чтобы диагностировать проблему.