【发布时间】:2012-04-20 06:39:16
【问题描述】:
【问题讨论】:
-
@Chris:那个链接指向这个页面...?
【问题讨论】:
底线是,你不能这样做。 System.Net.Mail 中使用的 FROM 地址用于 SMTP 事务 (Envelope-From) 和来自标头值的 MailMessage。
对不起,
戴夫
【讨论】:
提供给SMTP服务器的FROM是SmtpClient的登录,而Mail中的FROM是MailMessage中的FROM。
SmtpClient smtp = new SmtpClient();
smtp.Host = "myserver.address.com";
smtp.Credentials = new NetworkCredential("me@server.com", "myPassword");
MailMessage msg = new MailMessage();
msg.From = "otherMe@server.com";
//OTHER MESSAGE SETTINGS
smtp.Send(msg);
这应该使用服务器上用户“me@server.com”的身份验证从“otherMe@server.com”发送一封电子邮件
【讨论】:
Java 示例是关于返回地址,而不是 From。
据我所知,你不能这样做。 SMTP 服务器使用 From 地址来决定是否要中继。
您拥有的唯一其他凭据是登录 SMTP 服务器。
【讨论】:
很遗憾,这是不可能的。
首先,smtp.Host = smtp.serv.com; 存在语法错误,这不是有效的书面字符串类型,其次是属性 Host 不存在。
【讨论】:
作为explained by bzlm,如果你使用的是SmtpClient的网络投递方式,那么你可以通过设置MailMessage.Sender属性来设置MAIL FROM。但是请注意,这会产生副作用,即在您的邮件中添加一个发件人,这将导致许多电子邮件客户端将邮件发件人显示为“X 代表 Y”。
【讨论】: