2

我正在尝试实现可变信封返回路径 (VERP)方法来管理电子邮件地址(即,当我发送的电子邮件被退回时,我希望将其发送到特定的电子邮件地址,以便我可以更新我的数据库以避免发送电子邮件将来发送到该电子邮件地址)。

根据这篇文章,可以指定退回电子邮件发送到的电子邮件地址。你如何在.Net中做到这一点?

例如,假设我 (me@myserver.com) 想向您 (you@yourserver.com) 发送电子邮件。如果 you@yourserver.com 不再存在,我希望您的服务器将退回电子邮件发送到bounce-you=yourserver.com@myserver.com)。这样,当我收到这封退回的电子邮件时,我知道 you@yourserver.com 不再是有效的电子邮件地址,我可以相应地更新我的数据库。

在此示例中,退回地址为:bounce-you=yourserver.com@myserver.com
如何使用 System.Net.Mail 指定它?

4

1 回答 1

3

底线是您不能在 .NET 中执行此操作。您只能设置 FROM 地址,System.Net.Mail 也将其用作 Envelope-From。

要执行此类操作,您需要使用第 3 方 SMTP 对象,就像我写的那样:

http://www.aspnetemail.com

在 aspNetEmail 中,您可以执行以下操作:

EmailMessage msg = new EmailMessage();
msg.ReversePath = "bounceEmailAccountHere@whatever.com

aspNetEmail 将在 SMTP 会话期间使用 MAIL FROM 命令中的 ReversePath 值。我可以很容易地将此​​属性称为“ReturnPath”或“EnvelopeFrom”。回想起来,EnvelopeFrom 会是一个更好的名字。

于 2010-01-16T21:04:28.950 回答