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对象进行邮件发送,至此,一个完整的邮件发送实例已完成,赶快动手试试吧。

相关推荐
较劲男子汉10 小时前
CANN Runtime零拷贝传输技术源码实战 彻底打通Host与Device的数据传输壁垒
运维·服务器·数据库·cann
灰子学技术10 小时前
go response.Body.close()导致连接异常处理
开发语言·后端·golang
wypywyp10 小时前
8. ubuntu 虚拟机 linux 服务器 TCP/IP 概念辨析
linux·服务器·ubuntu
二十雨辰10 小时前
[python]-AI大模型
开发语言·人工智能·python
Doro再努力10 小时前
【Linux操作系统10】Makefile深度解析:从依赖推导到有效编译
android·linux·运维·服务器·编辑器·vim
senijusene10 小时前
Linux软件编程:IO编程,标准IO(1)
linux·运维·服务器
不像程序员的程序媛10 小时前
Nginx日志切分
服务器·前端·nginx
Yvonne爱编码10 小时前
JAVA数据结构 DAY6-栈和队列
java·开发语言·数据结构·python
Re.不晚10 小时前
JAVA进阶之路——无奖问答挑战1
java·开发语言
忧郁的橙子.10 小时前
02-本地部署Ollama、Python
linux·运维·服务器