未设置向地址发送电子邮件
本文关键字:电子邮件 地址 设置 | 更新日期: 2023-09-27 17:56:07
我有这个代码
var mail = new MailMessage(
"from@from.com",
"to@to.com",
"subject",
"body");
mail.ReplyToList.Add(new MailAddress("from@from.com"));
var client = new SmtpClient();
client.Send(mail);
在我的 web.config 文件中,我有
<system.net>
<mailSettings>
<smtp from="no-reply@no-reply.com">
<network host="smtp.live.com" password="mypassword" port="587" userName="myemailaddress@hotmail.com" enableSsl="true" />
</smtp>
</mailSettings>
</system.net>
问题是:发送到 to@to.com 的电子邮件的收件人地址不是 from@from.com 而是 myemailaddress@hotmail.com。 当我点击回复电子邮件地址时,因为我有这一行:
mail.ReplyToList.Add(new MailAddress("from@from.com"));
对电子邮件地址的回复确实设置为 from@from.com。
我想要的是:
- 回复要 from@from.com 的电子邮件地址(就像现在一样)
- 收件人电子邮件地址也要 from@from.com。
现在,任何收到电子邮件的人似乎都知道电子邮件来自 myemailaddress@hotmail.com。 我认为我添加的 web.config 中的配置仅用于对 smtp.live.com 邮件服务器进行身份验证,并且电子邮件地址不会在发送的电子邮件中使用。
我做错了什么?
以下是可用于设置自己的SMTP服务器的指南。假设您拥有"from.com",这将解决您的问题。
查看 MSDN 文档
如果需要从许多不同的域发送电子邮件,则可以为每个域配置虚拟SMTP服务器。看看这篇文章。
如果您不拥有尝试从中发送邮件的域,那么看起来就像您在欺骗发件人地址。