設置elmah對我來說是相對無痛的。直到我嘗試使用電子郵件工具。我已經閱讀了關於這個主題的所有以前的問題,但只是無法完成。這裏是我的web.config文件中的相關條目。這只是我做過的很多嘗試之一,這個嘗試是使用gmail和。我究竟做錯了什麼?elmah - 無法通過電子郵件發送異常
<elmah>
<errorMail
from="[email protected]"
to="[email protected]"
subject="elmah exception"
async="true"
smtpPort="0"
useSsl="true" />
</elmah>
<system.net>
<mailSettings>
<smtp deliveryMethod ="Network">
<network
host="smtp.gmail.com"
port="587"
userName="[email protected]"
password="..." />
</smtp>
</mailSettings>
</system.net>
<httpModules>
<add name="ErrorLog" type="Elmah.ErrorLogModule, Elmah"/>
<add name="ErrorMail" type="Elmah.ErrorMailModule, Elmah" />
</httpModules>
編輯 只是爲了證明的設置,我已經設法成功地從我的應用程序使用Gmail發送電子郵件。使用的設置是相同的,但我仍然無法讓elmah發送電子郵件。她是代碼片段。
MailMessage mailObj = new MailMessage();
mailObj.Subject = "gmail test";
mailObj.From = new System.Net.Mail.MailAddress("[email protected]");
mailObj.To.Add("[email protected]");
mailObj.Body = "Test Email";
SmtpClient smtpClient = new SmtpClient("smtp.gmail.com");
NetworkCredential basicCredential = new NetworkCredential("[email protected]", "mypassword");
smtpClient.UseDefaultCredentials = false;
smtpClient.Credentials = basicCredential;
smtpClient.Port = 587;
smtpClient.EnableSsl = true;
smtpClient.Send(mailObj);
甚至一些確認它看起來正確的將是有用的。
您在/ elmah/errorMail元素中拼寫錯誤'smtpPort',並且端口0在那裏可能不正確。 – 2012-03-14 03:49:11
謝謝你指出我的閱讀障礙,我會編輯原文。不幸的是,即使它拼寫正確,它仍然無法正常工作。通過設置smtpPort =「0」,它顯然使用部分中指定的端口。我試過顯式設置端口爲587的選項,但它仍然不起作用。 –
crackles
2012-03-14 05:00:50