【发布时间】:2010-11-22 11:59:06
【问题描述】:
可能完全重复:Sending Email in C#.NET Through Gmail
嗨,
我正在尝试使用 gmail 发送电子邮件:
我尝试了在此站点和其他站点上找到的各种示例,但总是遇到相同的错误:
Unable to connect to the remote server --> System.net.Sockets.SocketException: No connection could be made because the target active denied it 209.85.147.109:587
public static void Attempt1()
{
var client = new SmtpClient("smtp.gmail.com", 587)
{
Credentials = new NetworkCredential("MyEmailAddress@gmail.com", "MyPassWord"),
EnableSsl = true
};
client.Send("MyEmailAddress@gmail.com", "some.email@some.com", "test", "testbody");
}
有什么想法吗?
更新
更多细节。
也许我应该说一下我所做的其他尝试给了我同样的错误: (请注意,当我没有指定端口时,它会尝试使用端口 25)
public static void Attempt2()
{
var fromAddress = new MailAddress("MyEmailAddy@gmail.com", "From Name");
var toAddress = new MailAddress("MyEmailAddy@dfdf.com", "To Name");
const string fromPassword = "pass";
const string subject = "Subject";
const string body = "Body";
var smtp = new SmtpClient
{
Host = "smtp.gmail.com",
Port = 587,
EnableSsl = true,
DeliveryMethod = SmtpDeliveryMethod.Network,
UseDefaultCredentials = false,
Credentials = new NetworkCredential(fromAddress.Address, fromPassword)
};
using (var message = new MailMessage(fromAddress, toAddress)
{
Subject = subject,
Body = body
}
) { smtp.Send(message); }
}
public static void Attempt3()
{
MailMessage mail = new MailMessage();
mail.To.Add("MyEmailAddy@dfdf.com");
mail.From = new MailAddress("MyEmailAddy@gmail.com");
mail.Subject = "Email using Gmail";
string Body = "Hi, this mail is to test sending mail" +
"using Gmail in ASP.NET";
mail.Body = Body;
mail.IsBodyHtml = true;
SmtpClient smtp = new SmtpClient();
smtp.Host = "smtp.gmail.com";
smtp.Credentials = new System.Net.NetworkCredential
("MyEmailAddy@gmail.com", "pass");
smtp.EnableSsl = true;
smtp.Send(mail);
}
【问题讨论】:
-
您确定您的登录凭据设置正确吗?
-
您不是在服务器托管的 Web 应用程序中运行它吗?