gpt4 book ai didi

c# - 无法使用 .config 登录凭据覆盖 MailMessage 类中的 "From"地址

转载 作者:行者123 更新时间:2023-11-30 22:45:47 27 4
gpt4 key购买 nike

我正在更新一些使用 .Net 的 SMTP 类发送简单电子邮件的现有代码。示例代码如下。 SMTP 主机是 google,登录信息包含在 App.config 中,如下所示(显然不是真正的登录信息 :))。

我遇到的问题是,我无法通过谷歌搜索找到任何答案,是我无法覆盖网络元素的“用户名”属性中包含的“发件人”电子邮件地址的显示在已发送电子邮件的配置中。

在下面明确设置 myMailMessage 对象的 From 属性的行中,该值“Sparky@myDomain.com”在收到电子邮件时不会显示。它仍然显示为网络标签中的“erroruser@myDomain.com”。但是,发件人姓名“Sparky”确实出现在电子邮件中。

我已经尝试将自定义“发件人” header 添加到 myMailMessage 的 header 属性,但这也不起作用。

是否有登录 smtp 服务器的方法,如下所示,使用网络标签凭据,但在收到的实际电子邮件中覆盖显示的发件人电子邮件地址?

示例代码:

   MailMessage myMailMessage = new MailMessage();

myMailMessage.Subject = "My New Mail";
myMailMessage.Body = "This is my test mail to check";
myMailMessage.From = new MailAddress("Sparky@MyDomain.com", "Sparky");
myMailMessage.To.Add(new MailAddress("receiver@MyDomain.com", "receiver name"));

SmtpClient mySmtpClient = new SmtpClient();

mySmtpClient.Send(myMailMessage);

在 App.config 中:

<system.net>
<mailSettings>
<smtp deliveryMethod="Network" from="errors@mydomain.com">
<network host="smtp.gmail.com" port="587" userName="erroruser@mydomain.com" password="mypassword" defaultCredentials="false"/>
</smtp>
</mailSettings>
</system.net>

最佳答案

这取决于 SMTP 服务器。 Google 的 SMTP 服务器不允许您创建自己的“发件人”字段,但我发现其他 SMTP 服务器可以。您是否有必要使用 Google 的服务器?

关于c# - 无法使用 .config 登录凭据覆盖 MailMessage 类中的 "From"地址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2904988/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com