2012-12-10 44 views
8

我正在使用Office365網絡應用程序SMTP從Asp.Net發送電子郵件,但它總是拋出以下錯誤!在Asp.Net中使用Office365 SMTP時出錯

System.Net.Mail.SmtpException:SMTP服務器需要安全連接或客戶端未通過身份驗證。服務器響應爲:5.7.1客戶端沒有System.Net.Mail.MailCommand.CheckResponse

驗證下面的web.config文件中給出 - 使用用戶名密碼&改變

<network enableSsl="true" host="pod51007.outlook.com" userName="XXXX" password="XXXXX" port="587" defaultCredentials="false" /> 

任何幫助表示讚賞

+0

@Sandra沃爾特斯你應該這樣評論真的轉換成一個答案,這是我解決我的問題與上述錯誤。我希望我能夠投票贊成它應得的。 – DavRob60

回答

1

我認爲錯誤信息是誤導性的(與大多數微軟錯誤一樣!) - 錯誤代碼看起來與SMTP錯誤非常相似,5.7.1是一箇中繼錯誤。您可能需要使用Microsoft提供的管理員門戶來指定您的開發/生產public IP地址。

2

我有同樣的問題和解決這樣:

Dim client As SmtpClient = New SmtpClient() 
client.Credentials = New System.Net.NetworkCredential("your user", "your password") 
client.Port = 587 
client.Host = "smtp.office365.com" 

重要的是該指令,沒有他們不工作:

client.UseDefaultCredentials = False 
client.DeliveryMethod = SmtpDeliveryMethod.Network 
client.EnableSsl = True 
+0

這非常有幫助!如果你需要在web.config中啓用SSL,enableSsl =「true」將在.NET 4中工作 - 在http://stackoverflow.com/a/4973831/908677上找到它,它爲我工作。 –