C#基于SMTP邮件发送

准备工作

注册邮箱

首先我们需要注册一个作为发送邮件的邮箱,这一步可以直接进入网易邮箱官网进行注册,

注册地址:https://mail.163.com/

这里我们可以选择【快速注册】和【普通注册】,如图1-1所示,这里我选择的普通注册;

图1-1

登录邮箱

注册完成之后,我们登录邮箱,登录网址:https://mail.163.com/;

输入上一步中注册的账号和密码,进行登录;

开启SMTP服务

首先点击设置,在图1-3中标识出来了,进入设置后我们找到SMT,点击进入进行设置;

图1-3

接下来找到IMAP/SMTP服务,点击右边的【开启】按钮,如图1-4所示,这里我已经开启了,所以显示的是【关闭】按钮,这个时候我们的邮箱就已经开启了SMTP服务;

图1-4

这里我们可以看到提示中有服务器地址,我们开启的是SMTP服务,如图1-5所示,SMTP服务器的地址是:smtp.163.com

图1-5

开启后我们可以获取到授权码进行授权即可,到这里我们可以退出网易邮箱界面,接下来进入代码阶段;

代码展示

可以使用C#中的SmtpClient类和MailMessage类来实现通过SMTP协议发送电子邮件。以下是实现步骤:

第一步:

首先创建两个字段,一个为_server另一个为_email,如图2-1所示;

图2-1

第二步:

创建一个发送邮件的方法,首先创建一个SmtpClient对象、发件人地址对象、收件人地址对象和MailMessage对象,这里在创建SMTP对象的时候需要放入服务器地址作为参数、创建收发件人对象的时候需要输入邮箱地址、姓名和Encoding.UTF8作为参数,最后在创建MailMessage对象的时候需要把from和to作为参数传入,如图2-2所示;

图2-2

第三步:

接下来需要添加邮件主题和邮件内容,这里的body变量是方法传入的参数,直接引用即可,如图2-3所示;

图2-3

第四步:

接下来我们需要对邮件信息做一些必要的设置以及设置用户名和密码,方便下一步使用,如图2-4所示;

图2-4

需要注意的是这里的密码不是账号的登陆密码,是系统自动生成的授权码!!!

第五步:

接下来使用账号和授权码作为参数创建一个NetworkCredential对象,并赋值给client对象的Credentials属性,如图2-5所示;

图2-5

最后调用Send方法将message对象进行邮件发送,至此,一个完整的邮件发送实例已完成,赶快动手试试吧。

相关推荐
浪子明X6 分钟前
十六位账本怎样发现传输差错:Internet Checksum 生活类比
开发语言
xiangyun613 小时前
【408数据结构 08】队列:循环队列判空判满,408年年考,一次讲清
c语言·开发语言·数据结构·c++·算法
xiangyun613 小时前
【408数据结构 06】双链表、循环链表、静态链表
c语言·开发语言·数据结构·c++·算法
陈陈CHENCHEN4 小时前
【Linux】服务器根目录磁盘扩容操作记录
linux·运维·服务器
唐青枫4 小时前
对象到底住在哪里?C#.NET 托管堆从分配、GC 到内存排查
c#·.net
白远山4 小时前
家政服务家政社区派单实战:调度系统架构设计与实现指南
java·开发语言·小程序·架构·需求分析
DevRay5 小时前
Java 21虚拟线程深度实战:告别线程池焦虑,百万并发吞吐量直接翻倍(原理+代码+避坑)
java·开发语言
沸速存储5 小时前
AI 机器人靠哪些内存与存储驱动整机运行?
服务器·科技·嵌入式硬件·电脑
free-elcmacom5 小时前
C++学习<1>程序分区
开发语言·c++
醉颜凉5 小时前
Java 必看:如何彻底避免 HashMap 多线程死循环问题?
java·开发语言