很多小伙伴对于【程序发送邮件】不明觉厉的同时又羡慕嫉妒恨,其实发送邮件是一个很常用的功能,

我们这里就简单做一个发送邮箱的案例。

PS:案例使用qq邮箱,当然,也可以使用其他邮箱,只要替换邮箱关键字即可,下面案例已做标注。

首先,我们需要一个【当前发件授权码】,这个码需要登录发件箱里面进行开启,我们先开启一下。

1、登录发件箱的邮箱,进入【设置】

2、点击【账户】

3、下滑找到POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务,点击开启,根据提示操作完成后得到一个授权码,小编这里已经开启过了,就不演示了,不懂的童鞋可以自行百度。

授权码获取到后,我们就开始撸代码了,总共三步

1、配置web文件;

2、编写帮助类;

3、编写控制器测试。

配置web文件

 <appSettings><!--begin 邮箱配置--><add key="smtpServer" value="smtp.qq.com" /><!--邮箱SMTP服务器 可用qq邮箱、163邮箱,只是关键字不一样--><add key="mailFrom" value="1509802981@qq.com" /><!--当前发件箱的邮箱账号--><add key="userPassword" value="wckfuxwamayvgiba" /> <!--当前发件授权码,需要去发件开通获取  --><add key="mailTo" value="1509802981@qq.com;1509802981@qq.com" /><!--收件人:收件箱邮箱名称,多个收件人以分号;做分割符,这里我用同一个做测试--><!--end 邮箱配置--></appSettings>

编写帮助类

using System;
using System.Collections.Generic;
using System.Linq;
using System.Net.Mail;
using System.Text;
using System.Threading.Tasks;namespace ProjectWebDAL
{public static class EmailHelper{#region 发送邮件/// <summary>/// 发送邮件/// </summary>/// <param name="mailSubject">邮箱主题</param>/// <param name="mailContent">邮箱内容</param>/// <returns>返回发送邮箱的结果</returns>public static bool SendEmail(string mailSubject, string mailContent){// 设置发送方的邮件信息string smtpServer = System.Configuration.ConfigurationManager.AppSettings["smtpServer"];//SMTP服务器  //smtp.qq.com string mailFrom = System.Configuration.ConfigurationManager.AppSettings["mailFrom"];  // 当前发件箱登陆名string userPassword = System.Configuration.ConfigurationManager.AppSettings["userPassword"]; //授权码,在当前发送邮箱里面进行设置 string mailTo = System.Configuration.ConfigurationManager.AppSettings["mailTo"];  //收件人:收件箱邮箱名称,多个收件人以分号;做分割符bool b = false;string[] mailTos = mailTo.Split(new char[] { ';' }, StringSplitOptions.RemoveEmptyEntries);// 邮件服务设置SmtpClient smtpClient = new SmtpClient();smtpClient.DeliveryMethod = SmtpDeliveryMethod.Network;//指定电子邮件发送方式//smtpClient.DeliveryMethod = SmtpDeliveryMethod.PickupDirectoryFromIis;//指定电子邮件发送方式smtpClient.Host = smtpServer; //指定SMTP服务器smtpClient.Credentials = new System.Net.NetworkCredential(mailFrom, userPassword);//用户名和密码for (int i = 0; i < mailTos.Length; i++){// 发送邮件设置        MailMessage mailMessage = new MailMessage(mailFrom, mailTos[i]);mailMessage.Subject = mailSubject;//主题mailMessage.Body = mailContent;//内容mailMessage.BodyEncoding = Encoding.UTF8;//正文编码mailMessage.IsBodyHtml = true;//设置为HTML格式mailMessage.Priority = MailPriority.Low;//优先级try{smtpClient.Send(mailMessage); // 发送邮件b = true;}catch (SmtpException ex){return false;}}return b;}#endregion}
}

编写控制器测试(我使用的是控制器测试)

     //邮件发送public JsonResult Email(){ResultInfo result = new ResultInfo();EmailHelper.SendEmail("我是邮件主题", "我是邮件内容 ");result.res = true;result.info = "邮件发送成功!";return Json(result, JsonRequestBehavior.AllowGet);}//自定义返回json数据类型public class ResultInfo{public bool res { get; set; }public string info { get; set; }}

然后我们看一下效果

浏览器显示发送成功

指定邮箱也收到邮件了,为什么有两条呢,因为我们web配置文件里面发送多个邮件,两个都是同一个邮箱。

PS:我们发送的邮箱不一定需要写到配置文件,可以写到数据库,然后读取数据库指定邮件账户进行发送。

程序员最快的成功就是复制,有一个成功的demo后再去进行逐步了解,快去试一试吧!

转载于:https://www.cnblogs.com/xiongze520/p/10254123.html

10分钟学会发送邮件到指定邮箱相关推荐

  1. 一种获取公网ip地址并发送邮件至指定邮箱的实现方法

    背景   在之前一篇文章中介绍了利用路由器的端口映射功能实现内网穿透的方法.   ubuntu SSH内网穿透 + Vscode远程访问   在实际的使用过程中,发现这一实现途径存在一些不足之处,即当 ...

  2. pulsar 容量_[Pulsar系列] 10分钟学会Pulsar消息系统概念

    Apache Pulsar Pulsar是一个支持多租户的.高性能的服务与服务之间消息通讯的解决方案,最初由雅虎开发,现在由Apache软件基金会管理. Pulsar在Yahoo的生产环境运行了三年多 ...

  3. UWP开发入门(十九)——10分钟学会在VS2015中使用Git

    原文:UWP开发入门(十九)--10分钟学会在VS2015中使用Git 写程序必然需要版本控制,哪怕是个人项目也是必须的.我们在开发UWP APP的时候,VS2015默认提供了对微软TFS和Git的支 ...

  4. 静态html使用js发送邮件,html实现邮箱发送邮件_js发送邮件至指定邮箱功能

    在前端开发中,JavaScript并没有提供直接操作Email邮箱的功能方法,但是遇到这样的需求,我们应该如何实现js发送邮件至指定邮箱功能呢?下面列举能够在通过前端实现邮件发送的几种方式: 方式一: ...

  5. python写好的代码怎么给别人使用-10分钟学会用python写游戏!Python其实很简单!...

    原标题:10分钟学会用python写游戏!Python其实很简单! Python现在非常火,语法简单而且功能强大,很多同学都想学Python!所以在这里给各位看官们准备了高价值Python学习视频教程 ...

  6. 定时运行python脚本并发送邮件_python实现定时发送邮件到指定邮箱

    本文实例为大家分享了python实现定时发送邮件到指定邮箱的具体代码,供大家参考,具体内容如下 整个链路:传感器采集端采集数据,边缘端上传数据库,从数据库拿到数据. 产品端有个自动出报告的需求,并且希 ...

  7. 百度贴吧自动发帖_引流网赚之百度贴吧引流窍门:实操引流教程百度贴吧零成本自动顶帖+10分钟学会豆瓣顶帖引流...

    引流网赚之百度贴吧窍门:实操引流教程<百度贴吧零成本自动顶帖>+<10分钟学会豆瓣顶帖引流> 关于百度贴吧的引流方式有很多,像常见的关键词排名引流,比如,百度贴吧引流效果好不好 ...

  8. NiosII软处理器快速入门- 10分钟学会NiosII(1)

    http://hi.baidu.com/hieda/blog/item/7f69080e9efb80ce7bcbe13d.html Nios简单介绍: Nios II是一个用户可配置的通用RISC嵌入 ...

  9. 静态html使用js发送邮件,科技常识:html实现邮箱发送邮件_js发送邮件至指定邮箱功能...

    今天小编跟大家讲解下有关html实现邮箱发送邮件_js发送邮件至指定邮箱功能 ,相信小伙伴们对这个话题应该有所关注吧,小编也收集到了有关html实现邮箱发送邮件_js发送邮件至指定邮箱功能 的相关资料 ...

  10. 手机版python3h如何自制游戏_Python 飞机大战|10 分钟学会用 python 写游戏

    Python 飞机大战|10 分钟学会用 python 写游戏 2018 年 python 语言大火, 这把火看趋势已然延续到了 2019 年! 除了在科学计算领域 python 有用武之地之外, 在 ...

最新文章

  1. php将关联数组输出到前台,如何使用foreach从PHP中的关联数组输出特定数据
  2. python安装numpy-Python使用pip安装Numpy模块
  3. 佳能2900打印机与win10不兼容_佳能RF 1.4、RF 2增倍镜与RF 100500mm L IS USM并不完全兼容...
  4. 【Python学习】 - plt画图时,添加标题的中英文问题
  5. 通过Flume简单实现Kafka与Hive对接(Json格式)
  6. 通过火影忍者英雄案例 理解数据类型
  7. AV1视频编解码器核心编码工具概述
  8. Java中int和byte的互相转换
  9. 【跨境电商】WhatsApp营销保姆级教程!
  10. 59. 螺旋矩阵 II(中等 数组)
  11. Win10各版本区别
  12. python等于号怎么输入_python 中不等于怎么表示
  13. Flink事件时间和水印详解
  14. SpringBoot核心注解
  15. 52单片机led灯闪烁c语言程序,单片机LED灯闪烁程序
  16. klg日志文件中提取RGBD图像数据
  17. 用户之声 | GBASE南大通用实训有感
  18. 在计算机网络中发送电子邮件遵循的协议是,运行在互联网上用于电子邮件发送的协议是...
  19. 火鸟字幕合并器SubindexV0.5Build2006.5.9正式发布,简体版下载
  20. MSDN 离线安装包下载(微软官网)

热门文章

  1. 明道云在建筑工程行业的应用场景
  2. Eclipse项目中显示隐藏的文件
  3. pacman 查询_Pacman常用命令 文内搜索吧
  4. vue实现生成二维码与扫描二维码
  5. flutter自定义渐变背景按钮
  6. [凯立德]2013年12月凯立德2013秋季版2F21J0E发布_我是亲民_新浪博客
  7. linux eth0网卡配置详解
  8. 文件关联修复命令ftype用法
  9. c语言狗追兔子,[转载]狗追兔典型例题
  10. oracle的em能干什么,Oracle中EM的配置