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

相关推荐
这不小天嘛5 小时前
JAVA八股——J集合篇
java·开发语言
AOwhisky5 小时前
Python 学习笔记(第一期与第二期)——基础语法——核心知识点自测与详解
开发语言·笔记·python·学习·云原生·运维开发
星释6 小时前
鸿蒙智能体开发实战:23.常见问题
服务器·华为·ai·harmonyos·鸿蒙·智能体
小张成长计划..7 小时前
【Linux】10:冯·诺依曼体系结构和操作系统
linux·运维·服务器
习明然8 小时前
我的本地化AI项目(三)
人工智能·python·electron·c#·avalonia
喜欢的名字被抢了8 小时前
Python实战:SQLAlchemy ORM与FastAPI项目集成
开发语言·python·sql·教程·fastapi
从零开始的代码生活_10 小时前
C++ 内存管理:从内存分区到 new/delete 底层原理
开发语言·c++·后端
wabs66610 小时前
关于单调栈【力扣739.每日温度的思考】
java·开发语言
AOwhisky11 小时前
Python 学习笔记(第三期)——流程控制核心知识点自测与详解
开发语言·笔记·python·学习·云原生·运维开发·流程控制
m0_5648768411 小时前
没有公网IP的情况下,怎么进行远程连接两个电脑
服务器·tcp/ip·负载均衡