我正在使用Razor通過SMTP發送電子郵件。我正在使用相同的代碼在不同的站點上執行此操作,但是我在這一個上遇到了錯誤。我更改了Web.config SMTP設置。我不確定我可能會做錯什麼。電子郵件問題「發送郵件失敗」
@helper SendContactEmail(ContactFormModel formModel)
{
MailMessage mm = new MailMessage("[email protected]", "[email protected]");
mm.Subject = "New mail from J&M Services Contact Form";
//mm.Body = string.Format("Name: {0}\nEmail: {1}\n\nMessage: {2}", formModel.Name, formModel.Email, formModel.Comment);
mm.Body = "testing body";
mm.IsBodyHtml = false;
SmtpClient client = new SmtpClient();
client.DeliveryMethod = SmtpDeliveryMethod.Network;
try
{
client.Send(mm);
}
catch (Exception ex)
{
<h2>@ex.Message</h2>
<p>@ex.StackTrace</p>
}
}
我得到的錯誤是 「發送郵件失敗」 和堆棧跟蹤是 「在System.Net.Mail.SmtpClient.Send(消息MAILMESSAGE)在 ASP._Page_macroScripts_Contact_cshtml.b__16(的TextWriter __razor_helper_writer)in c:\ Dev \ SVN \ Main \ UmbracoApps \ umbJMServices \ umbJMServices \ macroScripts \ Contact.cshtml:line 262「。
262行是client.Send(mm);
我正在一個的InnerException:
System.IO.IOException:無法從傳輸 連接讀取數據:net_io_connectionclosed。在在 系統 System.Net.Mail.SmtpReplyReaderFactory.ProcessRead(字節[]緩衝液, 的Int32偏移的Int32讀,布爾的readLine)在 System.Net.Mail.SmtpReplyReaderFactory.ReadLines(SmtpReplyReader 呼叫者,布爾ONELINE)。 Net.Mail.SmtpReplyReaderFactory.ReadLine(SmtpReplyReader 呼叫者)在System.Net.Mail.SmtpConnection.GetConnection(的ServicePoint 的ServicePoint)在 System.Net.Mail.SmtpTransport.GetConnection(的ServicePoint的ServicePoint) 在System.Net.Mail。 SmtpClient.GetConnection()at System.Net.Mail.SmtpClient.Send(MailMessage message)
這通常意味着您的SMTP服務器存在問題。是否有InnerException? – SLaks
你有沒有在你的web.config中定義的SMTP服務器? –
我加了我的InnerException到問題。 @SLaks – Eric