From Address显示NetworkCredential用户电子邮件

本文关键字:用户 电子邮件 NetworkCredential 显示 Address From | 更新日期: 2023-09-27 18:20:04

我制作了一个用于发送电子邮件的web应用程序。它运行良好。

问题出在接收方-接收方将NetworkCredential用户电子邮件显示为"发件人电子邮件"。并且作为"发件人电子邮件"提供的电子邮件不存在。

我想向接收者显示被阻止的电子邮件,而不是networkcredential用户电子邮件。

示例代码-

using System.Net.Mail;

MailMessage oMsg = new MailMessage();
oMsg.From = new MailAddress("sender@somewhere.com","Diplay Name");
oMsg.To.Add(new MailAddress("recipient@somewhere.com")); 
oMsg.Subject = "Send Using Web Mail";
oMsg.Body ="Hi..";
System.Net.Mail.SmtpClient s = new System.Net.Mail.SmtpClient("host", port_no);
System.Net.NetworkCredential nc = new System.Net.NetworkCredential("user", "password");
s.EnableSsl = true;
s.UseDefaultCredentials = false;
s.Credentials = nc;
s.Send(oMsg);

收件人收到的电子邮件是"用户",但我想显示"sender@somewhere.com".


From Address显示NetworkCredential用户电子邮件

我认为您需要更新发送电子邮件地址的显示名称。

更新oMsg.From=新邮件地址("sender@somewhere.com");将为oMsg.From=新邮件地址("sender@somewhere.com","sender@somewhere.com");

MailAddress有一个重载,允许您传递给定邮件地址的显示名称,例如new MailAddress("sender@somewhere.com", "Display Name");

一些邮件服务(如谷歌)会覆盖.FROM值,并将始终使用ENVELOPE值,即NetworkCredential用户名。

我有一种感觉,那就是你所看到的。