这篇文章主要介绍了。网使用邮件套件进行邮件处理的方法步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
0.介绍
MimeKit和邮件套件是受欢迎的全功能电子邮件框架。网
框架支持版本如下
支持。NET 4.5 . NET 4.6 .NET 4.7 .NET 4.8 . NET 5.0 .NETStandard 2.0,Xamarin .安卓、Xamarin.iOS、Windows Phone 8.1等。
邮件套件是最流行且最强大的。网邮件处理框架之一,下面为大家简单介绍邮件套件的使用方式(IMAP为例)
1.参考资料
吉图布https://github.com/jstedfast/MailKit
官方http://www.mimekit.net/docs/html/Introduction.htm医生
2.核心内容(IMAP为例)
连接邮箱
加密
客户Connect('imap.exmail.qq.com ',993,SecureSocketOptions .SslOnConnect);
不加密
客户Connect('imap.exmail.qq.com ',143,SecureSocketOptions .无);
登入邮箱
客户。认证(MAIL_NAME,MAIL _ PASSWORD);
打开邮件文件夹
客户。收件箱。打开(文件夹访问.读写);
读取文件
读取方式一:可以预先筛选邮件
搜索主题标题包含" MimeKit "或“邮件套件”的邮件
var query=SearchQuery .主题包含(' MimeKit ').或者(搜索查询.主题包含('邮件套件');
var uids=客户端。收件箱。搜索(查询);
读取方式二:读取所有邮件
var uids=客户端。收件箱。搜索(搜索查询。全部);
邮件操作
操作邮件一:读取邮件标题
字符串主题=消息。主体;
if(!主题。包含(' MimeKitDemo '))
返回;
操作邮件二:读取正文
字符串正文=消息正文?字符串。空的;
if(!尸体。包含(' MimeKitDemoBody ')
返回;
操作邮件三:下载邮件附件
var附件=消息。附件;
if(唐山网页设计附件任何())
{
foreach(附件中的可变附件)
下载附件(附件);
}
私有静态无效下载附件(MimeEntity附件)
{
如果(附件是消息部分)
{
var fileName=附件内容部署?文件名;
var rfc822=(消息部分)附件;
if (string .IsNullOrEmpty(文件名))
文件名='附件-消息。EML ';
变量路径=路径。组合(目录,文件名);
使用(变量流=文件。创建(路径))
rfc822 .消息。WriteTo(流);
}
其他
{
var part=(MimePart)附件;