2012-11-18 67 views
4

當我到達下面的代碼塊的底線時,我收到一條消息,說服務器需要身份驗證。smtp服務器需要身份驗證,但我相信它已經有了它

MailMessage message = new MailMessage(); 
message.From = new MailAddress("[email protected]"); 

message.To.Add(new MailAddress("[email protected]")); 

message.Subject = "Message subject"; 
message.Body = "This is the content"; 

SmtpClient client = new SmtpClient(); 
client.Send(message); 

不過,我認爲如下我已經給了它在webconfig它需要的信息:

<mailSettings> 
    <smtp from="[email protected]"> 
    <network host="mySMTPserver" port="25" userName="myEmail" password="myPass" /> 
    </smtp> 
</mailSettings> 

大加讚賞,我在這裏看了很多帖子,他們似乎都提供任何意見以相同的方式登錄。

回答

1

兩件事情嘗試:

SET client.UseDefaultCredentials =假

SET端口:

client.Port = 587 

這些屬性也可以在config文件設置

要了解爲什麼587,請參閱 http://mostlygeek.com/tech/smtp-on-port-587/

+0

非常感謝您的回覆,它肯定改變了事情,您的港口建議非常值得了解。但它現在給我出現以下錯誤「連接嘗試失敗,因爲連接方在一段時間後沒有正確響應,或建立的連接失敗,因爲連接的主機未能響應」 - 我不確定端口是否造成 –

+0

請嘗試將端口重新設置爲25. –

+0

這解決了我使用其他SMTP服務器時遇到的問題。非常感謝您的時間:) –

相關問題