C# 邮件发送

2023-11-09

一、准备工作

1.要想编写一个发送邮件的小工具,首先得了解以下内容:

  • 收件人:这封邮件的接收人,邮件发送者沟通交流的对象。
  • 抄送:这封邮件的接收人,邮件发送者希望被抄送者了解邮件内容。
  • 密件抄送:这封邮件的接收人,与抄送的唯一区别就是它能够让各个收件人无法查看到这封邮件同时还发送给了哪些人。
  • 邮件主题:简述邮件内容。
  • 文本内容:邮件的主要内容。
  • 附件:与电子邮件附在一起传送至对方邮箱的文件。
  • 发件人:邮件的发送者。

2.其次是准备好一个邮箱,我们得对邮箱做一些设置。

本次采用163邮箱,因为用到了smtp协议,所以得保证这个邮箱的smtp服务是开启的。具体操作从以下文档得到http://help.163.com/09/1223/14/5R7P6CJ600753VB8.html

3.除此之外,我们还需开通一个客户端授权密码:

到此我们的准备工作告一段落。

二、编写代码

 1.初始化一个邮件类并进行相应赋值

 1         /// <summary>
 2         /// 邮件信息
 3         /// </summary>
 4         /// <returns></returns>
 5         private System.Net.Mail.MailMessage MailInfo()
 6         {
 7             System.Net.Mail.MailMessage message = new System.Net.Mail.MailMessage();
 8             //收件人
 9             message.To.Add("xxxxxx@qq.com");
10             //抄送
11             message.CC.Add("xxxxxxx@qq.com");
12             //密件抄送
13             message.Bcc.Add("xxxxxxxx@qq.com");
14             message.Subject = "邮件主题";
15             message.Body = "这里是邮件正文";
16             message.BodyEncoding = Encoding.UTF8;
17             message.Attachments.Add(new System.Net.Mail.Attachment("附件.txt"));
18             //优先级
19             message.Priority = System.Net.Mail.MailPriority.High;
20             //发件人
21             message.From = new System.Net.Mail.MailAddress("xxxxxxxx@qq.com");
22             return message;
23         }

2.发送邮件

 1         /// <summary>
 2         /// 发送邮件
 3         /// </summary>
 4         private void SmtpSend()
 5         {
 6             System.Net.Mail.SmtpClient client = new System.Net.Mail.SmtpClient();
 7             client.Host = "smtp.163.com";
 8             client.Port = 25;
 9             client.Credentials = new System.Net.NetworkCredential("xxxxxxxx@qq.com", "password");
10             client.EnableSsl = true;
11             client.DeliveryFormat = System.Net.Mail.SmtpDeliveryFormat.SevenBit;
12             client.DeliveryMethod = System.Net.Mail.SmtpDeliveryMethod.Network;
13             client.Send(MailInfo());
14         }

三、半成品运行截图

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

C# 邮件发送 的相关文章

随机推荐

  • 在rdesktop 远程时报如下错误Autoselecting keyboard map ‘en-us‘ from localeCore(warning): Certificate received

    在rdesktop 时报如下错误 Autoselecting keyboard map en us from locale Core warning Certificate received from server is NOT trust
  • IT项目管理第七次作业

    完成作业1 3的要求 使用 project 或其他项目管理工具 1 假设 每项工作的单位小时成本数如下表 项目经理单位小时成本为100 项目团队成员单位小时成本为60 WBS条目 小时数 单位小时成本 美元 子层总合 美元 WBS第二层的总
  • java 内存溢出 扩大jvm内存

    随手小记 今天下午遇到一个问题 java lang OutOfMemoryError Java heap space 内存溢出问题 遇到这个问题一般有两个解决方式 第一种 修改代码程序 代码中存在大量未被释放的对象引用 或者gc 机制没有来
  • 全排列 Ⅱ--回溯算法

    LeetCode 全排列 给定一个可包含重复数字的序列 返回所有不重复的全排列 示例 输入 1 1 2 输出 1 1 2 1 2 1 2 1 1 解法 回溯法 解题思路 思路很简单 因为要全排列 所以每一个数字都可能选择 即选择区间为 0
  • 最新版Bootstrap5教程——Bootstrap5基础

    个人主页 这个昵称我想了20分钟 往期专栏 速成之路 jQuery 速成之路 SQLserver 速成之路 Ajax 系列专栏 最新Bootstrap5教程 Bootstrap5 Bootstrap5简介 Bootstrap5下载 Boot
  • Linux下shell脚本实战之批量新建用户

    Linux下shell脚本实战之批量新建用户 一 脚本要求 二 脚本内容 三 运行脚本 一 脚本要求 二 脚本内容 三 运行脚本 一 脚本要求 1 使用提供的user txt用户列表 2 批量新建user txt中用户 二 脚本内容 1 查
  • java 简单 数组 自然合并排序

    题目 对所给元素存储于数组中或链表中 选择一种情形 写出自然合并排序算法 结果演示 基本思想 自然排序是在合并排序的基础上修改而成 合并排序 给出一个n个元素无序的整数数组 将其一分为2 则一个子集为n 2 再将子集划分为2 不断划分直到只
  • 电赛控制-----经验分享

    1 赛前准备 先简单介绍一下电赛 电赛是两年一届 单数年是大电赛 全称是全国大学生电子设计大赛 之前由瑞萨电子赞助 所以之前也叫瑞萨杯 从19年开始赞助方变成了TI公司 偶数年是小电赛 全称是 TI杯 模电邀请赛 这里不得不提TI公司的实力
  • json库报错(TypeError: the JSON object must be str, bytes or bytearray, not TextIOWrapper)

    使用json库导入json文件时 报错 TypeError the JSON object must be str bytes or bytearray not TextIOWrapper import json f open data d
  • 学习TensorFlow,调用预训练好的网络(Alex, VGG, ResNet etc)

    视觉问题引入深度神经网络后 针对端对端的训练和预测网络 可以看是特征的表达和任务的决策问题 分类 回归等 当我们自己的训练数据量过小时 往往借助牛人已经预训练好的网络进行特征的提取 然后在后面加上自己特定任务的网络进行调优 目前 ILSVR
  • oracle12542,关于客户端报的ORA-12542

    最近用户一个小应用系统总是出故障 windows的系统上跑一个VB写的小客户端程序 出现问题的时候 系统会弹出以下信息 Microsoft ODBC driver for oracle ORA 12542 TNS address alrea
  • GC日志分析

    JVM的GC日志的主要参数包括如下几个 XX PrintGC 输出GC日志 XX PrintGCDetails 输出GC的详细日志 XX PrintGCTimeStamps 输出GC的时间戳 以基准时间的形式 XX PrintGCDateS
  • 阿里云平台接入python版

    物联网基于python云平台的接入 文章目录 物联网基于python云平台的接入 1 设计目的 2 功能要求和关键问题 2 1 系统功能描述 2 2复杂工程问题分析 3 系统整体框架设计 4 模块的设计和实现 4 1 阿里云基础和设计 4
  • 22个开源的PHP框架

    PHP 是一个被广泛使用的来进行Web开发的脚本语言 虽然有很多其它可供选择的Web开发语言 像 ASP 和Ruby 但是PHP是目前为止世界上最为流行的 那么 是什么让PHP如此流行 PHP 如此之流行是因为比起别的语言来 它更容易学习
  • 后端程序员必备:mysql数据库相关流程图/原理图

    前言 整理了一些Mysql数据库相关流程图 原理图 做一下笔记 大家一起学习 1 mysql主从复制原理图 mysql主从复制原理是大厂后端的高频面试题 了解mysql主从复制原理非常有必要 主从复制原理 简言之 就三步曲 如下 主数据库有
  • DCEL数据结构

    文章目录 前言 DCEL介绍 DCEL优势 DCEL数据结构实现 Point Vertex HalfEdge Face Reference 前言 虽然https blog csdn net baidu 34931359 article de
  • 探索无限可能的教育新领域,景联文教育GPT题库开启智慧教育新时代!

    随着人工智能技术的快速发展 教育领域也将迎来一场革命性的变革 景联文科技是AI基础数据行业的头部企业 近期推出了一款高质量教育GPT题库 景联文科技高质量教育GPT题库采用了先进的自然语言处理技术和深度学习算法 可以实现对各类题目的智能识别
  • UIIAlertController的自动消失

    自动消失的思路就是添加一个计时器 设置计时器的时间 让UIAlertController 通过dismiss消失 UIAlertController alert UIAlertController alertControllerWithTi
  • css知识学习系列(6)-每天10个知识点

    目录 1 CSS中的 box sizing 属性与 border 属性有什么关系 2 在CSS中 如何使用 calc 函数进行计算 有什么使用技巧 3 在CSS中 如何使用 import 引入外部样式表 有哪些注意事项 4 Flexbox和
  • C# 邮件发送

    一 准备工作 1 要想编写一个发送邮件的小工具 首先得了解以下内容 收件人 这封邮件的接收人 邮件发送者沟通交流的对象 抄送 这封邮件的接收人 邮件发送者希望被抄送者了解邮件内容 密件抄送 这封邮件的接收人 与抄送的唯一区别就是它能够让各个