发送电子邮件使用Windows虚拟邮件服务器的头球回传路径
-
19-08-2019 - |
题
我试图使用.NET类MAILMESSAGE也可以添加返回路径头发送电子邮件,以使任何反弹回来到不同的电子邮件地址。代码如下:
MailMessage mm = new MailMessage(
new MailAddress(string.Format("{0}<{1}>", email.FromName, email.FromEmail)),
new MailAddress(emailTo));
mm.Subject = ReplaceValues(email.Subject, nameValues);
mm.ReplyTo = new MailAddress(string.Format("{0}<{1}>", email.FromName, email.FromEmail));
mm.Headers.Add("Return-Path", ReturnEmail);
// Set the email html and plain text
// Removed because it is unneccsary for this example
// Now setup the smtp server
SmtpClient smtp = new SmtpClient();
smtp.Host = SmtpServer;
smtp.DeliveryMethod = SmtpDeliveryMethod.PickupDirectoryFromIis;
if (SmtpUsername.Length > 0)
{
System.Net.NetworkCredential theCredential =
new System.Net.NetworkCredential(SmtpUsername, SmtpPassword);
smtp.Credentials = theCredential;
}
smtp.Send(mm);
每当我检查被送到我检查了头,它似乎总是缺少返回路径的电子邮件。有什么事我是缺少正确配置呢?正如我上面说我使用的是标准的虚拟邮件服务器我开发机(XP)。但是它会在Windows 2003上运行的最后。
有没有人有任何想法,为什么它不来通过?
解决方案
在返回路径是基于所述SMTP MAIL FROM信封设置。您可以使用发件人属性做这样的事情。结果 在一个相关的问题的另一个讨论,你将有迟早:的你怎么能设置SMTP信封邮件使用System.Net.Mail?
和顺便说一句,如果使用SmtpDeliveryMethod.PickupDirectoryFromIis,发件人属性未用作MAIL FROM;你必须使用网络作为传递方法,以保持该值。 我没有找到这个问题的任何解决办法。结果 PickupDirectoryFromIis,发件人属性和SMTP MAIL FROM信封
不隶属于 StackOverflow