.NET Core使用FluentEmail发送邮件的示例代码(3)

在使用.Net Core的实际开发中,依赖注入已经成为了必不可少的开发模式。如果你正在使用.Net Core开发项目,但是你还没有接触依赖注入,那么需要你先自行反省一下。FluentEmail作为一款与时俱进的组件,也可以结合依赖注入使用,使用这种方式我们可以在注册的时候统一的配置一些默认的设置。这波操作就不需要额外引入一些别的包了,如果你需要使用Smtp就引入FluentEmail.Smtp包,如果你需要使用Razor模板就引入FluentEmail.Razor包,关于注入的这一部分的功能其实是包含在FluentEmail.Core包里面的

public void ConfigureServices(IServiceCollection services) { SmtpClient smtp = new SmtpClient { //smtp服务器地址(我这里以126邮箱为例,可以依据具体你使用的邮箱设置) Host = "smtp.qq.com", UseDefaultCredentials = true, DeliveryMethod = SmtpDeliveryMethod.Network, //这里输入你在发送smtp服务器的用户名和密码 Credentials = new NetworkCredential("zhangsan@qq.com", "zhangsan") }; //注入的时候可以添加一些默认的设置 services //设置默认发送用户 .AddFluentEmail("zhangsan@qq.com") //添加razor模板支持 //.AddRazorRenderer($"{Directory.GetCurrentDirectory()}/Views") .AddRazorRenderer() //配置默认的smtp服务信息 .AddSmtpSender(smtp); }

在需要发送邮件的类中直接注入IFluentEmail,不必惊慌咱们上面使用的Email这个类其实就是实现了IFluentEmail这个接口,所以使用方式上是完全一致的

public async Task<IActionResult> SendEmail([FromServices]IFluentEmail email) { var result = await email//发送人 //发送人 .From("zhangsan@126.com") //收件人 .To("lisi@qq.com") //抄送人 .CC("admin@126.com") //邮件标题 .Subject("邮件标题") //邮件内容 .Body("邮件内容").SendAsync(); return View(); }

如果你需要发送Razor视图模板相关的内容,也还是那个熟悉的配方那个熟悉的味道,没有任何的不同,只是省略了一些我们在注册的时候添加的一些默认配置

public async Task<IActionResult> SendEmail([FromServices]IFluentEmail email) { var result = await email//发送人 //发送人 .From("zhangsan@126.com") //收件人 .To("lisi@qq.com") //抄送人 .CC("admin@126.com") //邮件标题 .Subject("邮件标题") //邮件内容 .Body("邮件内容").SendAsync(); return View(); }

总结

关于FluentEmail的基本使用方式我们就介绍到这里,我个人感觉它自身的功能还是非常强大的,而且使用起来非常的简单。说实话在之前我没接触到FluentEmail之前,我经常在园子里看到其他语言集成发送邮件的组件,确实非常强大,比如在springboot中集成spring-boot-starter-mail真的是非常的便捷。后来无意中接触到了FluentEmail心里还是蛮欣慰的,一是它强大的功能和易用性,其次是可以去结合.Net Core进一步优化了它的使用方式,至少在.Net和.Net Core中我们也拥有一款非常便捷的邮件发送组件。FluentEmail的作者也呼吁更多的开发者能够了解并参与到FluentEmail开发和实践中去,最后再次贴上它的GitHub地址https://github.com/lukencode/FluentEmail

到此这篇关于.NET Core使用FluentEmail发送邮件的示例代码的文章就介绍到这了,更多相关.NET Core 发送邮件内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/8d6d5176b34a8d8c7d4945baa7fdc8e6.html