尝试从ASP中的1and1 smtp服务器发送电子邮件:
MailMessage Msg = new MailMessage();
Msg.From = new MailAddress("admin@mywebsite.com");
Msg.To.Add("personalmail");
SmtpClient smtp = new SmtpClient("auth.smtp.1and1.fr",465);
smtp.Credentials = new NetworkCredential("admin@mywebsite.com", "mypassword");
smtp.EnableSsl = true;
try
{
// smtp.Send(Msg);
smtp.Send(Msg);
return "ok";
}
catch (Exception e)
{
return e.ToString();
}
代码进入catch中,出现错误名称:“net_io_connectionclosed” 有人知道这个问题吗? 此致
答案 0 :(得分:3)
Hyrozen,
您必须使用端口587。
答案 1 :(得分:0)
Hyrozen,
我有一周相同的问题,我发现这个代码(我不记得在哪里......所以作者非常感谢)。我的页面只有一个用户名的文本框和一个textarea文本和一个按钮发送电子邮件与我联系(这就是为什么我把发件人的内容与FROM和TO一样在邮件中):
try
{
MailMessage message = new MailMessage();
message.From = new MailAddress(ConfigurationManager.AppSettings["Sender"]);
message.To.Add(ConfigurationManager.AppSettings["Sender"]);
message.Subject = "Comentario de " + TB_nomcomplet.Text;
message.IsBodyHtml = false;
message.Body = TB_texteemail.Text;
SmtpClient smtp = new SmtpClient();
smtp.Host = ConfigurationManager.AppSettings["SmtpHost"];
smtp.Credentials = new NetworkCredential("emailYours", "passwordYours");
smtp.Send(message);
LBL_messageEmail.Visible = true;
}
catch (Exception ex)
{
LBL_messageEmail.Text = "Error: " + ex.Message;
}
在web.config中:
<appSettings>
<add key="SmtpHost" value="smtp.1and1.com" />
<add key="Sender" value="emailYours" />
</appSettings>