简介

FluentEmail - 适用于 .NET 和 .NET Core 的邮件发送库

从 .NET 和 .NET Core 发送电子邮件的最简单方法。将 Razor 用于电子邮件模板并使用 SendGrid、MailGun、SMTP 等进行发送

Nuget包

•FluentEmail.Core - 域模型•FluentEmail.Smtp - 通过 SMTP 服务器发送电子邮件•FluentEmail.Razor - 使用 Razor 模板生成电子邮件•FluentEmail.Liquid - 使用Liquid 模板生成电子邮件•FluentEmail.Mailgun - 通过 MailGun 的 REST API 发送电子邮件•FluentEmail.SendGrid - 通过 SendGrid API 发送电子邮件•FluentEmail.Mailtrap - 向 Mailtrap 发送电子邮件。使用FluentEmail.Smtp进行传递•FluentEmail.MailKit - 使用MailKit电子邮件库发送电子邮件

用法

基本用法

var email = await Email.From("john@email.com").To("bob@email.com", "bob").Subject("hows it going bob").Body("yo bob, long time no see!").SendAsync();

依赖注入

public void ConfigureServices(IServiceCollection services)
{services.AddFluentEmail("fromemail@test.test").AddRazorRenderer().AddSmtpSender("localhost", 25);
}
public class EmailService {private IFluentEmail _fluentEmail;public EmailService(IFluentEmail fluentEmail) {_fluentEmail = fluentEmail;}public async Task Send() {await _fluentEmail.To("hellO@gmail.com").Body("The body").SendAsync();}
}

使用 Razor 模板

Email.DefaultRenderer = new RazorRenderer();var template = "Dear @Model.Name, You are totally @Model.Compliment.";var email = Email.From("bob@hotmail.com").To("somedude@gmail.com").Subject("woo nuget").UsingTemplate(template, new { Name = "Luke", Compliment = "Awesome" });

使用 Liquid 模板

var fileProvider = new PhysicalFileProvider(Path.Combine(someRootPath, "EmailTemplates"));
var options = new LiquidRendererOptions
{FileProvider = fileProvider
};Email.DefaultRenderer = new LiquidRenderer(Options.Create(options));// template which utilizes layout
var template = @"
{% layout '_layout.liquid' %}
Dear {{ Name }}, You are totally {{ Compliment }}.";var email = Email.From("bob@hotmail.com").To("somedude@gmail.com").Subject("woo nuget").UsingTemplate(template, new ViewModel { Name = "Luke", Compliment = "Awesome" });

发送电子邮件

Email.DefaultSender = new SmtpSender();//send normally
email.Send();//send asynchronously
await email.SendAsync();

Github地址

https://github.com/lukencode/FluentEmail

最后大家如果喜欢我的文章,还麻烦给个关注并点个赞, 希望net生态圈越来越好!

FluentEmail - 适用于 .NET 和 .NET Core 的邮件发送库相关推荐

  1. python 轻量级邮件发送库

    http://sender.readthedocs.org/en/latest/ 转载于:https://blog.51cto.com/pcliuyang/1656703

  2. Asp.Net Core 快速邮件队列设计与实现

    发送邮件几乎是软件系统中必不可少的功能,在Asp.Net Core 中我们可以使用MailKit发送邮件,MailKit发送邮件比较简单,网上有许多可以参考的文章,但是应该注意附件名长度,和附件名不能 ...

  3. AspNet Core 2.2 SendGrid邮件发送(可群发)

    开发环境:ASPNet Core 2.2 步骤: 1,前往SendGrid官网,申请账号.有免费账号,30天无限制,30天后仍可使用,做测试足够. 2,新建类库 2,安装包:PM> Instal ...

  4. JAVA 邮件发送工具类

    1.封装邮件接收地址MODEL和邮件信息MODEL package com.sicdt.jnzxgzc.common.mail.model;import java.io.Serializable; / ...

  5. spring各种邮件发送

    参考地址一 参考地址二 参考地址三 参考地址四 Spring邮件抽象层的主要包为org.springframework.mail.它包括了发送电子邮件的主要接口MailSender,和值对象Simpl ...

  6. Spring的任务调度和邮件发送

    感谢网友 网络时空 兄弟对我的提醒,我已经把邮件发送中加上了邮件嵌入图片和增加附件方面的内容.谢谢 8.1.1任务调度简介 Spring包含了对定时调度服务的内置支持类.当前,Spring支持从JDK ...

  7. 你有没有觉得邮件发送人固定配置在yml文件中是不妥当的呢?SpringBoot 动态设置邮件发送人

    明月当天,不知道你有没有思念的人 前言 之前其实已经写过SpringBoot异步发送邮件,但是今天在一个小项目中要用到发送邮件时,我突然觉得邮件发送人只有一个,并且固定写在yml文件中,就是非常的不妥 ...

  8. 利用Spring框架封装的JavaMail现实同步或异步邮件发送

    利用Spring框架封装的JavaMail现实同步或异步邮件发送 作者:张纪豪 J2EE简单地讲是在JDK上扩展了各类应用的标准规范,邮件处理便是其中一个重要的应用.它既然是规范,那么我们就可以通过J ...

  9. magento邮件使用php,Magento订单成功无邮件发送

    Magento订单成功之后,或是有新的订单在MAGENTO1.9.1版本中不发送相应的邮件及抄送邮件至管理员邮箱 这个问题是今天我们的一个客户从1.7升级到1.9.1.1时发现的,后来听技术人员说,此 ...

最新文章

  1. html怎么将旋转定位在中心,html – 定位旋转的div元素
  2. vsftpd实现的FTP服务
  3. excel if in函数_【Excel函数】Small+Index+IF 一对N返回
  4. 忘记glassfish密码,那就重置密码呗
  5. 空间滤波_第三章 灰度变换与空间滤波-(六)锐化空间滤波器之拉普拉斯算子...
  6. 非常全的VS Code快捷键
  7. 关于HTML5中Video标签无法播放mp4的解决办法
  8. oracle map order,oracle面向对象技术中的map和order方法有何不同?
  9. win10 python 3.7 pip install tensorflow
  10. 「罗马人的故事I 罗马不是一天建成的」读后感
  11. 读《About Face 4 交互设计精髓》16
  12. unity 保存数据到本地的方法
  13. 开局一张图教你记住HTTP基本格式
  14. 杨建:网站加速--实例分析篇
  15. 输入年月日获取农历日期
  16. APP开发多少钱多少人和哪些注意事项
  17. MPlayer播放器源码分析 2012
  18. RocketMQ 优雅停机技巧
  19. Python:PrettyTable格式化输出数据
  20. 做html5抽奖程序xu,用jQuery实现抽奖程序

热门文章

  1. MapReduce中的InputFormat(1)概述
  2. 采用Atlas+Keepalived实现MySQL读写分离、读负载均衡【转载】
  3. Kamp;R练习题6-1统计关键词出现的次数
  4. 操作主机 RID matser
  5. JAVA编程经验汇总 (载)
  6. 安卓相机 高帧率_Android MediaCodec和摄像头:如何实现更高的帧速率从相机获取帧原始数据?...
  7. linux下搭建go环境--问题记录
  8. Java发送邮件(带附件)
  9. C语言中递归什么时候能够省略return引发的思考:通过内联汇编解读C语言函数return的本质...
  10. 洛谷——P1033 自由落体