我希望有人可以帮助我解决问题,因为这是另一种情况,但我不完全理解它为什么起作用:
我在 web.config 中有标准的 SMTP 设置,并且我有一个自定义邮件部分,因为我需要根据代码中调用的方法从不同的电子邮件地址发送。
我想是因为我已经在自定义部分中定义了来自地址的不同邮件,所以我可以删除标准的 mailSettings 部分,但代码在发件人地址处出现,我相信因为我正在定义一个新的 System.Net.Mail.MailMessage 实例这会自动查看标准的 mailSettings 部分。
如果我有标准的 mailSettings 部分,我的两种方法都可以工作,从不同的地址发送电子邮件。
我查看了 Scott Guthrie 的博客文章,他在 mailSettings 中也有标准设置,但也定义了发件人地址 - 在他的示例中,方法中的发件人地址与 web.config 中 mailSettings 部分的发件人地址不同
所以,我的问题是:
- MailMessage 类是否会自动查看 mailSettings 部分?
- 为什么当我在自定义部分中定义发件人地址时,它没有被选中,为什么在这种情况下我不能删除标准的 mailSettings 部分?
- 如果我必须使用标准设置,因为我使用的是 MailMessage 类,那么如何将发件人地址定义为与 mailSettings 部分不同的东西,为什么我们在那里有一个发件人地址?
在我看来,在 Scott Guthrie 的示例中,他用代码中的地址覆盖了 mailSettings 中的发件人地址,如果他没有在代码中定义发件人地址,它将默认为 mailSettings 中的地址,但我希望有人可以为我澄清这一点。
非常感谢!