3 回答

TA貢獻1852條經驗 獲得超1個贊
我認為問題在于隱式 SSL。
System.Net.Mail
僅支持“顯式”SSL,如此處所述:
通常這是由慣例支配的。在端口 25(正常情況)上運行的 SMTP 使用顯式 SSL。在端口 465 上運行的 SMTPS 使用隱式 SSL。在端口 587 上運行的郵件提交使用顯式 SSL。
25
如果允許顯式 SSL,您可以嘗試使用端口。

TA貢獻1998條經驗 獲得超6個贊
這可能是題外話,但我想建議你使用
https://github.com/jstedfast/MailKit
而不是自己創建 smtp 客戶端,這是來自https://www.infoq.com/news/2017/04/MailKit-MimeKit-Official的原因。
SmtpClient 的主要問題是它有一個令人困惑的連接生命周期。連接到 SMTP 服務器可能很耗時,尤其是在啟用身份驗證的情況下,因此每個 SmtpClient 對象都有一個內部連接池。

TA貢獻1796條經驗 獲得超4個贊
試試下面的代碼。
private async Task<bool> SendEmail(string Email, string Message)
{
try
{
SmtpClient client = new SmtpClient("www.test.com");
client.UseDefaultCredentials = false;
client.Credentials = new NetworkCredential("[email protected]", "password");
MailMessage mailMessage = new MailMessage();
mailMessage.From = new MailAddress("[email protected]");
mailMessage.To.Add(Email);
mailMessage.Body = Message;
mailMessage.Subject = "abc";
await client.SendMailAsync(mailMessage);
return true;
}
catch (Exception ex)
{
return false;
}
}
- 3 回答
- 0 關注
- 256 瀏覽
添加回答
舉報