前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >一行代码,发送邮件

一行代码,发送邮件

原创
作者头像
用户8671053
修改2021-11-03 10:01:25
3780
修改2021-11-03 10:01:25
举报
文章被收录于专栏:码农的生活码农的生活

由于几乎在每个项目开发中都离不开发送邮件功能,所以,我们反感反复造轮子,就随手基于Net.Mail封装的发送邮件代码。这段代码写了很久了,今天拿出来完善了一下、改了一个bug、加了注释、写了文档,重新发布到了NuGet上。这段代码可以用于在.Net项目中发送邮件,只需一行代码,真的是一行。支持多附件、多接收人、多抄送人。

注:欢迎大家使用及提Bug.

其实也没什么特性

  • 支持自定义邮件发出邮箱、发出方名字等。
  • 支持SSL加密发送。
  • 多个接收人、抄送人。
  • 支持添加附件、多个附件。
  • 目前大部分主流邮箱全支持。

傻瓜式安装

via NuGet:

1.打开程序包管理器控制台,执行命令:

Install-Package Mafly.Mail

或:

2.在Project右键,选择“管理NuGet程序包”,在右上角搜索框搜索“Mafly.Mail”。点击安装

via 源代码:

引用如下两个 .dll 文件

Newtonsoft.Json.dll

Mafly.Mail.dll

然后在项目目录下建立一个名字为 Config 文件夹,放入 MailSetting.config 文件,根据自己的邮箱服务器进行配置

注:以上两种方式完成后,都要把 MailSetting.config复制到输出目录 设置为 始终复制 ,或者把 生成操作 设置为 嵌入的资源

这一步不能少!不能少!!不能少!!!

不用看就会的用法

代码语言:javascript
复制
      var mailService = new Mafly.Mail.Mail();
//参数:接收者邮箱、内容
mailService.Send("mafly@obo2o.cn", "测试邮件发送!");
//参数:接收者邮箱、接收者名字、内容
mailService.Send("mafly@obo2o.cn", "mafly", "测试邮件发送!");
//参数:接收者邮箱、接收者名字、邮件主题、内容
mailService.Send("mafly@obo2o.cn", "mafly", "邮件发送", "测试邮件发送!");
//使用MailInfo对象模式  参数:接收者邮箱、接收者名字、邮件主题、内容
mailService.Send(new MailInfo
{
  Receiver = "mafly@obo2o.cn",
  ReceiverName = "mafly",
  Subject = "邮件发送",
  Body = "测试邮件发送!"
});
//使用MailInfo对象模式  参数:接收者邮箱、接收者名字、邮件主题、内容、附件路径
mailService.Send(
  new MailInfo
  {
     Receiver = "mafly@obo2o.cn",
    ReceiverName = "mafly",
    Subject = "带附件邮件发送",
     Body = "测试带附件邮件发送!"
  }, "../../Program.cs");
//使用MailInfo对象模式  参数:接收者邮箱、接收者名字、邮件主题、内容、多附件路径
mailService.Send(
  new MailInfo
  {
    Receiver = "mafly@obo2o.cn",
    ReceiverName = "mafly",
    Subject = "带附件邮件发送",
    Body = "测试带附件邮件发送!"
  }, new Attachment("../../Program.cs"), new Attachment("../../App.config"));

想了解 Attachment 对象和 MailMessage 对象的。具体请点击官方文档

最后的 Q&A

你封装的这一个其实并没有什么卵用,很简单阿,有这个必要吗?

是的,你说的对。

为什么不使用现成的那些、在线服务呢?如:SendCloud

你管。

真的是一行代码么?我看到好多行阿。

现在这个社会,没有噱头谁会看呢,您说是吧?

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 其实也没什么特性
  • 傻瓜式安装
  • 不用看就会的用法
  • 最后的 Q&A
  • 你封装的这一个其实并没有什么卵用,很简单阿,有这个必要吗?
  • 为什么不使用现成的那些、在线服务呢?如:SendCloud
  • 真的是一行代码么?我看到好多行阿。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档