C# 尝试使用c从aspx页面发送电子邮件时出错,无法解析远程名称:';www.blabla.foo';
我已经用c#在aspx中创建了一个注册页面。我写了这个简单的代码来在注册后发送邮件,但它不起作用。我知道这很容易受到SQL注入的攻击,但请忽略我只是想测试电子邮件的发送方式。 它显示出错误 无法解析远程名称:“www.blabla.foo” 请告诉我什么是错误,我有什么修改,以便我可以发送电子邮件C# 尝试使用c从aspx页面发送电子邮件时出错,无法解析远程名称:';www.blabla.foo';,c#,asp.net,C#,Asp.net,我已经用c#在aspx中创建了一个注册页面。我写了这个简单的代码来在注册后发送邮件,但它不起作用。我知道这很容易受到SQL注入的攻击,但请忽略我只是想测试电子邮件的发送方式。 它显示出错误 无法解析远程名称:“www.blabla.foo” 请告诉我什么是错误,我有什么修改,以便我可以发送电子邮件 FileUpload1.PostedFile.SaveAs(Server.MapPath(".") + "//uploadimage//" + str); string path = "../Alum
FileUpload1.PostedFile.SaveAs(Server.MapPath(".") + "//uploadimage//" + str);
string path = "../Alumni/uploadimage/" + str.ToString();
con.Open();
SqlCommand cmd = new SqlCommand("insert into highly-sql-injection-prone-table...", con);
cmd.ExecuteNonQuery();
con.Close();
MailMessage msg;
SqlCommand cmd1 = new SqlCommand();
string ActivationUrl = string.Empty;
string emailId = string.Empty;
cmd1.Parameters.AddWithValue("@Name", TextBox5.Text.Trim());
cmd1.Parameters.AddWithValue("@EmailId", TextBox1.Text.Trim());
cmd1.Parameters.AddWithValue("@Password", TextBox3.Text.Trim());
if (con.State == ConnectionState.Closed)
{
con.Open();
}
cmd.ExecuteNonQuery();
msg = new MailMessage();
SmtpClient smtp = new SmtpClient();
emailId = TextBox1.Text.Trim();
msg.From = new MailAddress("info@blablabla.foo");
msg.To.Add(emailId);
msg.Subject = "Confirmation E-mail";
msg.Body = "Hi";
msg.IsBodyHtml = true;
smtp.Credentials = new NetworkCredential("info@blablabla.foo", "***************");
smtp.Port = 587;
smtp.Host = "smtp.blablabla.foo";
smtp.EnableSsl = true;
smtp.Send(msg);
ScriptManager.RegisterStartupScript(this, this.GetType(), "Message",
"alert('Confirmation Link to activate your account has been sent to your email address');", true);
con.Close();
Session["New"] = TextBox1.Text;
Response.Redirect("Successfull.aspx");
该错误表示域解析失败,并且错误消息与您的代码不对应。使用NSLOOKUP运行快速检查时,stjosephschoolrkl.org上似乎不存在smtp名称。在NSLOOKUP工具中使用type=MX,然后询问它关于stjosephschoolrkl.org的信息,这表明邮件服务器的名称只是stjosephschoolrkl.org,没有SMTP。然后,我成功地通过587端口远程登录到stjosephschoolrkl.org,并成功地键入了EHLO,从MailEnable电子邮件服务器获得了标准的电子邮件服务器响应
这么简单的回答,从你的smtp.Host行中删除“smtp.”,你就可以开始了。代理服务器未启用可能是当我在stjosephschoolrkl.org上使用
type=MX
执行nslookup
时,我得到的MX条目是mail.stjosephschoolrkl.org
。也许你应该检查一下smtp.Host是否设置错误。