我在这里做错了什么?
private void SendMail(string from, string body)
{
string mailServerName = "plus.pop.mail.yahoo.com";
MailMessage message = new MailMessage(from, "aditya15417@yahoo.com", "feedback", body);
SmtpClient mailClient = new SmtpClient();
mailClient.Host = mailServerName;
mailClient.Send(message);
message.Dispose();
}
我收到以下错误:
连接尝试失败,因为连接方在一段时间后没有正确响应,或者建立的连接失败,因为连接的主机无法响应209.191.108.191:25
答案 0 :(得分:5)
您正在使用wrong server。您需要使用SMTP设置。
尝试此服务器:plus.smtp.mail.yahoo.com
他们的网站将此主机记录为SSL。
private void SendMail(string from, string body)
{
string mailServerName = "plus.smtp.mail.yahoo.com";
int mailServerPort = 465;
string toAddress = "aditya15417@yahoo.com";
string subject = "feedback";
string username = "user";
string password = "password";
SmtpClient mailClient = new SmtpClient(mailServerName,
mailServerPort);
mailClient.Host = mailServerName;
mailClient.Credentials = new NetworkCredential(username,
password);
mailClient.EnableSsl = true;
using (MailMessage message = new MailMessage(from,
toAddress,
subject,
body))
mailClient.Send(message);
}
答案 1 :(得分:5)
您需要使用SMTP服务器,看起来就像使用的是POP3服务器。
答案 2 :(得分:0)
要使用Yahoo邮件服务器发送电子邮件,您需要在SmtpClient实例上设置EnableSSL = true。
您还需要使用正确的端口465。
本网站上有很多教程真正涵盖了如何使用System.Net.Mail命名空间: