.NET Core 邮件发送使用库MailKit

news/2024/9/28 15:25:37

安装库MailKit

 发送邮件

 /// <summary>/// 发送邮件/// </summary>/// <param name="subject">邮件主题</param>/// <param name="body">邮件内容</param>public void SendEmail(string subject, string body){var message = new MimeMessage();message.From.Add(new MailboxAddress("邮箱的名称", "your@example.com"));message.To.Add(new MailboxAddress("邮箱的名称", "接收方@exam.com"));message.Subject = subject;var bodyBuilder = new BodyBuilder{HtmlBody = body};message.Body = bodyBuilder.ToMessageBody();using (var smtpClient = new SmtpClient()){smtpClient.Connect("smtp.qq.com", 465, true); // 服务器地址、端口、加密方式 ssl加密端口465、587  以QQ邮箱为例,具体的服务器地址去对应邮箱官网获取smtpClient.Authenticate("your@example.com", "授权码"); // 邮箱登录凭证
         smtpClient.Send(message);smtpClient.Disconnect(true);}}

注:

关于授权码,需要去发送方邮箱的官网获取授权码,以QQ邮箱为例,登录QQ邮箱进入设置=》账号=》账号安全=》开启服务,跟着指示向下执行,就很可以获取授权码

 

收取邮件

 /// <summary>/// 收取邮件/// </summary>/// <returns></returns>public async Task ReceiveEmailAsync(){using (var client=new ImapClient()){await client.ConnectAsync("imap.qq.com", 993,true);//ssl 端口993 以QQ邮箱为例await client.AuthenticateAsync("your@qq.com", "授权码");var inbox = client.Inbox;await inbox.OpenAsync(MailKit.FolderAccess.ReadOnly);foreach(var uid in await inbox.SearchAsync(SearchQuery.NotSeen))//此处获取未查看的邮件{var message=await inbox.GetMessageAsync(uid);Console.WriteLine($"Subject:{message.Subject}");}await client.DisconnectAsync(true);}}
注:根据需求向inbox.SearchAsync()中传入需要查看邮件的分类

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.ryyt.cn/news/59526.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

相关文章

2021 CSP-J 完善程序3

2021 CSP-J 完善程序3 1 完善程序 (单选题 ,每小题3分,共30分) (矩形计数)平面上有n个关键点,求有多少个四条边都和x轴或者y轴平行的矩形,满足四个顶点都是关键点。给出的关键点可能有重复,但完全重合的矩形只计一次。 试补全枚举算法 #include<stdio.h>struct poin…

MUR3040CT-ASEMI快恢复二极管MUR3040CT

MUR3040CT-ASEMI快恢复二极管MUR3040CT编辑:ll MUR3040CT-ASEMI快恢复二极管MUR3040CT 型号:MUR3040CT 品牌:ASEMI 封装:TO-220AB 安装方式:插件 批号:最新 恢复时间:35ns 最大平均正向电流(IF):30A 最大循环峰值反向电压(VRRM):400V 最大正向电压(VF):0.95V~1…

pbootcms模板后台登录页面在哪里修改

在PBootCMS中,如果你想修改后台登录页面的内容,比如文字和链接,可以通过编辑相应的HTML文件来实现。以下是具体的步骤: 修改后台登录页面备份文件:在修改任何文件之前,务必先备份相关文件,以防万一操作失误可以恢复。找到登录页面文件:打开你的PBootCMS安装目录,找到a…

一文总览 CES 升级新特性,全面了解云上的资源使用

摘要:使用云监控服务使您全面了解云上的资源使用情况、业务的运行状况,并及时收到异常告警做出反应,保证业务顺畅运行。1. 简介 云监控服务(CES)为用户提供一个针对弹性云服务器、带宽等资源的立体化监控平台,涵盖云基础设施、高阶服务、外网网络质量监控,是基于主机监控…

解读GaussDB(for MySQL) 冷热存储分离实现原理

摘要:GaussDB(for MySQL)冷热存储分离特性,支持用户直接针对Innodb的page进行归档和回迁操作,且无需调整上层业务即可访问冷数据。本文分享自华为云社区《GaussDB(for MySQL)新特性解读:冷热存储分离》,作者:GaussDB 数据库。 技术背景 业务长期运行,但随着时间推移,越…

WTF???

不是哥们,这紫了之后还能再升一遍?哦,喜闻乐见的 plagiarism 事件啊,那没事了

算法与数据结构——二分查找插入点

二分查找插入点 二分查找不仅可用于搜索目标元素,还可以解决许多变种问题,比如搜索目标元素的插入位置。 无重复元素情况Question 给定一个长度为n的有序数组nums和一个元素target,数组不存在重复元素。现将target插入数组nums中,并保持其有序性。若数组中已存在元素target…

2022 CSP-J 阅读程序3

1 2022 CSP-J 阅读程序3 阅读程序(程序输入不超过数组或字符串定义的范围;判断题正确填 √,错误填;除特 殊说明外,判断题 1.5 分,选择题 3 分) 源代码 #include<iostream>using namespace std;int n,k;int solve1() {int l=0,r=n;while(l<=r){int mid=(l+r)/2;…