首页 > 代码库 > .Net Core邮件发送之MailKit
.Net Core邮件发送之MailKit
一 、在.Net Core中MailKit中提供了邮件的基础封装
它支持跨平台,并且支持 IMAP, POP3, SMTP 等协议
Nuget命令:
Install-Package MailKit
官方Git地址:https://github.com/jstedfast/MailKit
注:
1.目前版本v1.16.1
2.SmtpClient中处理编码有些问题,对于服务器的异常相应中文显示乱码
二、使用实例:
MimeMessage message = new MimeMessage(); //发件人 message.From.Add(new MailboxAddress("张三丰", "xxx@qq.com")); //收件人 message.To.Add(new MailboxAddress("测试", "xxx@163.com")); //标题 message.Subject = "测试标题内容"; //产生一个支持HTml 的TextPart TextPart body = new TextPart(TextFormat.Html) { Text = "<h1>测试内容</h1>" }; //创建Multipart添加附件 Multipart multipart = new Multipart("mixed"); multipart.Add(body); //附件 string absolutePath = @"F:\桌面\新建文件夹\mysql1.sql"; MimePart attachment = new MimePart() { //读取文件,只能用绝对路径 ContentObject = new ContentObject(File.OpenRead(absolutePath), ContentEncoding.Default), ContentDisposition = new ContentDisposition(ContentDisposition.Attachment), ContentTransferEncoding = ContentEncoding.Base64, //文件名字 FileName = Path.GetFileName(absolutePath) }; multipart.Add(attachment); //正文内容,发送 message.Body = multipart; //message.Body = body; using (SmtpClient client = new SmtpClient()) { //Smtp服务器 client.Connect("smtp.qq.com", 587, false); //登录,发送 //特别说明,对于服务器端的中文相应,Exception中有编码问题,显示乱码了 client.Authenticate("xxx@qq.com", "xxx"); client.Send(message); //断开 client.Disconnect(true); Console.WriteLine("发送邮件成功"); }
更多:
.NetCore中EFCore for MySql整理
Asp.Net Core WebAPI入门整理(三)跨域处理
Asp.Net Core中Json序列化处理整理
.Net Core邮件发送之MailKit
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。