Во-первых, я приношу свои извинения, так как мне кажется, что этот вопрос задавался много раз на Stack Overflow, однако я пытался просмотреть некоторые из этих решений, но они все равно не помогают. Я просто пытаюсь выяснить, выделяется ли что-то в моем коде из-за моей проблемы.
У меня есть веб-сайт mvc, который в настоящее время размещен на учетной записи общего хостинга GoDaddy. Я пытаюсь настроить простую контактную форму, которая отправляет электронное письмо владельцу сайта. Когда я отправляю форму, никаких сообщений об ошибках не сообщается, однако электронное письмо не отправляется. Я уже несколько раз говорил со службой поддержки GoDaddy, и они говорят, что с их стороны ничего не происходит. Кроме того, при тестировании с моего локального хоста (используя в моем web.config) электронная почта успешно сохраняется в каталоге.
Несколько деталей:
Страница, на которой возникла проблема (для телефона используйте только цифры. Я все еще работаю над этим): https://solarsafely.com/Home/Contact
Хостинг GoDaddy: общий доступ
Электронная почта, которую я пытаюсь использовать для отправки: электронная почта Outlook 365 (приобретена у GoDaddy)
Вот мой контроллер mvc для отправки:
public async Task<ActionResult> Contact(Email email)
{
if(ModelState.IsValid)
{
try
{
string body = "<p>Email From: {0} ({1})</p><p>Message:</p><p>{2}</p>";
MailMessage mail = new MailMessage();
mail.To.Add(new MailAddress("[email protected]"));
mail.From = new MailAddress(email.From);
mail.Subject = "You have a new message from SolarSafely.com - Contact Us";
mail.Body = string.Format(body, email.Name, email.From, email.Body);
mail.IsBodyHtml = true;
using (SmtpClient smtp = new SmtpClient())
{
await smtp.SendMailAsync(mail);
return RedirectToAction("Sent");
}
}
catch(Exception exc)
{
ViewBag.Error = exc.Message;
}
}
return View(email);
}
Web.config:
<system.net>
<mailSettings>
<smtp from="[email protected]">
<network host="relay-hosting.secureserver.net" port="25" />
</smtp>
</mailSettings>
</system.net>
Любая идея, почему мое письмо не отправляется? Спасибо