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

相关推荐
Artech23 分钟前
[MAF预定义的AIContextProvider-02]AgentSkillsProvider——将Agent Skills引入MAF
ai·c#·agent·agent skills·maf
大树8816 小时前
金刚石散热越强,管路越先见顶
大数据·运维·服务器·人工智能·ai
LDR00616 小时前
Type-C 快充全面升级!LDR6601 赋能个人护理便携电机,重塑剃须刀 / 理发器新体验
c语言·开发语言
雪碧聊技术16 小时前
Tree.js是什么?一文讲透
开发语言·javascript·ecmascript
码云数智-园园16 小时前
C++20 Modules 模块详解
java·开发语言·spring
小宇宙Zz17 小时前
Maven依赖冲突
java·服务器·maven
swordbob17 小时前
NIO的channel中什么是 fd(File Descriptor,文件描述符)
java·开发语言·nio
源分享17 小时前
Java线程同步的多种实现方法(非常详细)
java·开发语言·jvm
Luminous.17 小时前
C语言--day30
c语言·开发语言
何以解忧,唯有..18 小时前
Go语言循环语句详解:for、range与循环控制
开发语言·算法·golang