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

相关推荐
投笔丶从戎3 分钟前
Kotlin Multiplatform--01:项目结构基础
android·开发语言·kotlin
杜小暑1 小时前
动态内存管理
c语言·开发语言·动态内存管理
想不明白的过度思考者1 小时前
Java从入门到“放弃”(精通)之旅——JavaSE终篇(异常)
java·开发语言
我真的不会C1 小时前
QT窗口相关控件及其属性
开发语言·qt
CodeCraft Studio1 小时前
Excel处理控件Aspose.Cells教程:使用 Python 在 Excel 中进行数据验
开发语言·python·excel
火柴盒zhang1 小时前
websheet之 编辑器
开发语言·前端·javascript·编辑器·spreadsheet·websheet
子非衣1 小时前
Windows云主机远程连接提示“出现了内部错误”
服务器·windows
景天科技苑1 小时前
【Rust】Rust中的枚举与模式匹配,原理解析与应用实战
开发语言·后端·rust·match·enum·枚举与模式匹配·rust枚举与模式匹配
阿让啊1 小时前
C语言中操作字节的某一位
c语言·开发语言·数据结构·单片机·算法
椰羊~王小美2 小时前
LeetCode -- Flora -- edit 2025-04-25
java·开发语言