在Core 2.2中使用FluentEmail时,我找不到配置安全/经过身份验证的smtp的方法。
我遵循了这个https://lukencode.com/2018/07/01/send-email-in-dotnet-core-with-fluent-email/,这是众所周知的代码,我在代码中的位置-没问题。
我的smtp需要身份验证,没有身份验证,我将无法从我的应用程序发送电子邮件。
我该如何添加身份验证详细信息,例如用户名和密码?
有人设法弄清楚这一点并能够提供建议吗?谢谢。
答案 0 :(得分:1)
FluentEmail只是集成的System.Net.Mail库的外观。函数AddSmtpServer()具有重载功能,包括通过标准SmtpClient的可能性。因此,您只需构造原始的SmtpClient即可,然后将其传递给FluentEmail。
var client = new SmtpClient();
client.Credentials = new NetworkCredential("my_user", "my_password");
client.Host = "my_server";
client.Port = 25;
services
.AddFluentEmail("defaultsender@test.test")
.AddSmtpSender(client);
Btw SmtpClient类在.Net Core 2.2中被标记为过时,并且Microsoft建议使用另一种解决方案...因此,您可能会看一下它是否会更好。
“ SmtpClient及其类型的网络设计不良,我们强烈建议您改用https://github.com/jstedfast/MailKit和https://github.com/jstedfast/MimeKit”