发送电子邮件联系表c#asp.net visual studio 2012
我已经为此工作了几天,虽然它不会给我一个错误,但它也不会发送电子邮件。(我没有收到任何)。 (电子邮件发送的消息将显示在我的联系方式中…) 我已经在asp.net c#中创建了一个联系人表单-它正在我的本地主机上运行,但我想向我的gmail或outlook帐户发送电子邮件 问题是。。。我的代码有什么问题?有什么建议吗 提前谢谢你的帮助 代码如下:发送电子邮件联系表c#asp.net visual studio 2012,c#,asp.net,email,visual-studio-2012,C#,Asp.net,Email,Visual Studio 2012,我已经为此工作了几天,虽然它不会给我一个错误,但它也不会发送电子邮件。(我没有收到任何)。 (电子邮件发送的消息将显示在我的联系方式中…) 我已经在asp.net c#中创建了一个联系人表单-它正在我的本地主机上运行,但我想向我的gmail或outlook帐户发送电子邮件 问题是。。。我的代码有什么问题?有什么建议吗 提前谢谢你的帮助 代码如下: protected void BtnSubmit_Click1(object sender, EventArgs e) { i
protected void BtnSubmit_Click1(object sender, EventArgs e)
{
if (IsValid) //if all boxes are filled in...
{
try
{
MailMessage mailMessage = new MailMessage();
MailAddress fromAddress = new MailAddress(txtbxEmailAddress.Text); //sender email address
mailMessage.From = fromAddress;
mailMessage.To.Add("myemail@gmail.com"); //receiver email address
mailMessage.Body = txtRequest.Text;
mailMessage.IsBodyHtml = true;
mailMessage.Subject = " Contact Us";
SmtpClient smtpClient = new SmtpClient();
smtpClient.Host = "smtp.gmail.com";
smtpClient.Port = 587;
smtpClient.EnableSsl = true;
smtpClient.DeliveryMethod = System.Net.Mail.SmtpDeliveryMethod.Network;
smtpClient.Credentials = new System.Net.NetworkCredential("myemail@gmail.com", "mypassword");
smtpClient.Send(mailMessage);
}
catch (Exception)
{
lblMailmsg.Text = String.Format("Error sending email");
}
lblMailmsg.Text = String.Format("Your Message has been sent. We will be in contact with you as soon as possible."); //msg show when mail is sent
//clear contact form
txtbxfname.Text = "";
txtbxLName.Text = "";
txtbxEmailAddress.Text = "";
txtRequest.Text = "";
}
}
}
}
我看到的最大问题是这行代码是什么
mailMessage.From = fromAddress;
这将破坏SPF,也会导致DMARC失败,并且您永远不会从某些人那里得到消息
您可以在此处阅读更多有关内容:
建议的解决办法是:
mailMessage.From = "myemail@gmail.com"
mailMessage.Subject = " Contact Us" + fromAddress;
这样,您就避免了文章中的问题提纲 对!!非常感谢:)我把它改为:mailMessage.From=新邮箱地址(“myemail@gmail.com"); mailMessage.Subject=“联系我们”+fromAddress;我会在我的gmail中收到电子邮件。:)现在的问题是,当我在gmail中收到电子邮件时,它是来自我,而不是来自用户在联系表单中填写的电子邮件地址。我该如何改变这一点?非常感谢您,因为我现在知道问题出在哪里了……:)您不能改变这一点,这就是问题的全部-您需要做更多的工作,以回应客户。但至少你会收到客户的电子邮件回复。好的,谢谢。我也希望能改变这一点,可惜做不到:(但你是对的,至少我收到了电子邮件!:)再次感谢!