当前位置: 首页 > 编程语言 > C#

如何使用System.Net.Mail设置SMTP信封MAILFROM?分享

时间:2023-04-10 17:08:15 C#

System.Net.Mail如何设置SMTP信封MAILFROM?当您使用C#和System.Net.Mail命名空间发送电子邮件时,您可以在MailMessage对象上设置“From”和“From”属性,但是这些都不允许您生成MAILFROM和FROM地址到DATA部分彼此不同。MAILFROM被设置为“From”属性值,如果设置了“Sender”,它只是在DATA部分添加另一个头字段。这导致“从X@Y.COM到A@B.COM”,这不是您想要的。我错过了什么吗?用例是控制代表其他人发送的新闻稿等的NDR目的地。我目前使用的是aspNetEmail而不是System.Net.Mail,因为它允许我正确地执行此操作(就像大多数其他SMTP库一样)。对于aspNetEmail,这是使用EmailMessage.ReversePath属性完成的。MailMessage.Sender将始终插入一个发件人标头(代表您的电子邮件客户端进行解释)。如果您在SmtpClient上使用网络传送方法,.Sender还会更改信封中的发件人。使用PickupDirectoryFromIis传递方法让IIS确定信封发件人,IIS将使用发件人地址,而不是发件人地址。MSDN上也有类似的问题。我刚刚找到了如何去做:就是这样(即使我花了一段时间才弄清楚)如果添加以下行,则Return-Path和Reply-To标头将设置在邮件标头中。DimstrReplyToAsString="email@domain.tld"message.ReplyToList.Add(strReplyTo)message.Headers.Add("Return-Path",strReplyTo)如果您点击回复设置为回复地址的电子邮件,您是否是什么意思?://创建邮件消息MailMessagemail=newMailMessage();//设置地址mail.From=newMailAddress("me@mycompany.com");mail.To.Add("you@yourcompany.com");//设置内容mail.Subject="Thisisanemail";mail.Body="thisisasamplebodywithhtmlinit.ThisisboldThisisblue";mail.IsBodyHtml=true;//发送消息SmtpClientsmtp=newSmtpClient("127.0.0.1");smtp.发送(邮件);来自http://www.systemnetmail.com/faq/3.1.2.aspx以上是C#学习教程:如何使用System.Net.Mail设置SMTP信封MAILFROM?如果所有分享的内容对你有用,需要进一步了解C#学习教程,希望大家多多关注。本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处: