世上最好的发邮件代码

简介: Code  1 using System;    2     3 using System.Net;    4     5 using System.Net.Mail;    6     7 using System.
img_1c53668bcee393edac0d7b3b3daff1ae.gif img_405b18b4b6584ae338e0f6ecaf736533.gif Code
  1 using System;  
  2   
  3 using System.Net;  
  4   
  5 using System.Net.Mail;  
  6   
  7 using System.Net.Mime;  
  8   
  9   
 10   
 11 namespace Fish
 12   
 13 {  
 14   
 15     /// <summary>  
 16   
 17     /// 发送邮件的类  
 18   
 19     /// </summary>  
 20   
 21     public class SendMail  
 22   
 23     {  
 24   
 25         private MailMessage mailMessage;  
 26   
 27         private SmtpClient smtpClient;  
 28   
 29         private string password;//发件人密码  
 30   
 31   
 32   
 33         /// <summary>  
 34   
 35         /// 处审核后类的实例  
 36   
 37         /// </summary>  
 38   
 39         /// <param name="To">收件人地址</param>  
 40   
 41         /// <param name="From">发件人地址</param>  
 42   
 43         /// <param name="Body">邮件正文</param>  
 44   
 45         /// <param name="Title">邮件的主题</param>  
 46   
 47         /// <param name="Password">发件人密码</param>  
 48   
 49         public SendMail(string To, string From, string Body, string Title, string 
 50 Password)  
 51   
 52         {  
 53   
 54             mailMessage = new MailMessage();  
 55   
 56             mailMessage.To.Add(To);  
 57   
 58             mailMessage.From = new System.Net.Mail.MailAddress(From);  
 59   
 60             mailMessage.Subject = Title;  
 61   
 62             mailMessage.Body = Body;  
 63   
 64             mailMessage.IsBodyHtml = true;  
 65   
 66             mailMessage.BodyEncoding = System.Text.Encoding.UTF8;  
 67   
 68             mailMessage.Priority = System.Net.Mail.MailPriority.Normal;  
 69   
 70             this.password = Password;  
 71   
 72         }  
 73   
 74   
 75   
 76         /// <summary>  
 77   
 78         /// 添加附件  
 79   
 80         /// </summary>  
 81   
 82         public void Attachments(string Path)  
 83   
 84         {  
 85   
 86             string[] path = Path.Split(',');  
 87   
 88   
 89   
 90             Attachment data;  
 91   
 92             ContentDisposition disposition;  
 93   
 94   
 95   
 96             for (int i = 0; i < path.Length; i++)  
 97   
 98             {  
 99   
100                 data = new Attachment(path[i], MediaTypeNames.Application.Octet);//实例化
101 附件  
102   
103                 disposition = data.ContentDisposition;  
104   
105                 disposition.CreationDate = System.IO.File.GetCreationTime(path[i]);//获取
106 附件的创建日期  
107   
108                 disposition.ModificationDate = System.IO.File.GetLastWriteTime(path[i]);//
109 获取附件的修改日期  
110   
111                 disposition.ReadDate = System.IO.File.GetLastAccessTime(path[i]);//获取附
112 件的读取日期  
113   
114                 mailMessage.Attachments.Add(data);//添加到附件中  
115   
116             }  
117   
118         }  
119   
120   
121   
122   
123   
124         /// <summary>  
125   
126         /// 异步发送邮件  
127   
128         /// </summary>  
129   
130         /// <param name="CompletedMethod"></param>  
131   
132         public void SendAsync(SendCompletedEventHandler CompletedMethod)  
133   
134         {  
135   
136             if (mailMessage != null)  
137   
138             {  
139   
140                 smtpClient = new SmtpClient();  
141   
142                 smtpClient.Credentials = new System.Net.NetworkCredential
143 (mailMessage.From.Address, password);//设置发件人身份的票据  
144   
145                 smtpClient.DeliveryMethod = System.Net.Mail.SmtpDeliveryMethod.Network;  
146   
147                 smtpClient.Host = "smtp." + mailMessage.From.Host;  
148   
149                 smtpClient.SendCompleted += new SendCompletedEventHandler
150 (CompletedMethod);//注册异步发送邮件完成时的事件  
151   
152                 smtpClient.SendAsync(mailMessage, mailMessage.Body);  
153   
154             }  
155   
156         }  
157   
158   
159   
160         /// <summary>  
161   
162         /// 发送邮件  
163   
164         /// </summary>  
165   
166         public void Send()  
167   
168         {  
169   
170             if (mailMessage != null)  
171   
172             {  
173   
174                 smtpClient = new SmtpClient();  
175   
176                 smtpClient.Credentials = new System.Net.NetworkCredential
177 (mailMessage.From.Address, password);//设置发件人身份的票据  
178   
179                 smtpClient.DeliveryMethod = System.Net.Mail.SmtpDeliveryMethod.Network;  
180   
181                 smtpClient.Host = "smtp." + mailMessage.From.Host;  
182   
183                 smtpClient.Send(mailMessage);  
184   
185             }  
186   
187         }  
188   
189     }  
190   
191 }  
目录
相关文章
|
机器学习/深度学习 数据采集 自然语言处理
数据分享|Python酒店评论文本分析:tfidf、贝叶斯、逻辑回归,支持向量机SVM、K最邻近KNN、随机森林、LDA主题模型
数据分享|Python酒店评论文本分析:tfidf、贝叶斯、逻辑回归,支持向量机SVM、K最邻近KNN、随机森林、LDA主题模型
|
XML 存储 数据库
Android 逆向笔记 —— ARSC 文件格式解析
Android 逆向笔记 —— ARSC 文件格式解析
Android 逆向笔记 —— ARSC 文件格式解析
|
数据可视化 安全 Java
值得学习的Python GUI 库 - pyQt5快速入门及精美界面设计体验
在很多追求极致的开发者中,大多都会拿 Python 跟其他编程语言比较,比如和java或者 C/C++比较一番,大家通常都会不约而同地从执行的角度对一门语言进行比较.而且这也是最直观的感受,所以 Python 会被普遍认为执行速度不够快.但是我一直觉得,存在即合理,每门编程语言都有它存在的意义,每门语言都有自己擅长的地方,一门编程语言的诞生大多都是作者当时为了解决自己遇到的某一领域难题而创造的,所以每一门语言在某一领域都有自己的优势,而且如今 CPU 的处理速度足够快,基本可以缩小很多领域之间不同语言的执行效率差距.各司其职,合适的语言运用在合适的领域或许能得到意想不到的效果.语言没有好坏之分
693 1
|
存储 传感器 编解码
微软行星云计算planet platform中的高分辨率影像通过API接入Google Earth Engine(GEE)
微软行星云计算planet platform中的高分辨率影像通过API接入Google Earth Engine(GEE)
692 0
微软行星云计算planet platform中的高分辨率影像通过API接入Google Earth Engine(GEE)
|
存储 人工智能 算法
【大数据发展篇】大数据的诞生
【大数据发展篇】大数据的诞生
649 0
【大数据发展篇】大数据的诞生
|
机器学习/深度学习 存储 人工智能
更精确地预估到达时间,滴滴新研究提出异质时空图卷积网络
「师傅,还有多长时间能到啊?」在打的赶往目的地时,我们经常会问这样一个问题。但如果我们打的是滴滴,这个问题就不用开口问了。因为,滴滴的研究者正不断挑战更加精确的到达时间预估结果,相关结果被 KDD 2020 接收为Oral论文。
463 0
 更精确地预估到达时间,滴滴新研究提出异质时空图卷积网络
|
并行计算 PyTorch 算法框架/工具
一个易用且高效的基于 PyTorch 的 MoE 模型训练系统.
一个易用且高效的基于 PyTorch 的 MoE 模型训练系统.
1191 0
一个易用且高效的基于 PyTorch 的 MoE 模型训练系统.
|
安全 开发工具 Android开发
Android Studio模拟器(AVD)安装
1、选择AVD Manager 2、添加设备 3、选择设备 4、Error while waiting for device: The emulator process for AVD Pixel_2_API_28 was killed. 5、安装(更新) AVD HAXM 6、下载后&gt;next&gt;Finish 7、Unable to install Intel® HAXM VT-x is disabled in BIOS. 8、咱再次安装AVD HAXM,终于安装成功了,如下图。 9、再次开开心心运行项目 10、还要开开心心运行项目 相关推荐
1576 0
Android Studio模拟器(AVD)安装
|
数据采集 数据可视化 BI
一份可视化特征图的代码
本文给大家分享一份我用的特征图可视化代码。 欢迎关注公众号CV技术指南,专注于计算机视觉的技术总结、最新技术跟踪、最新论文解读、各种技术教程、CV招聘信息发布等。关注公众号可邀请加入免费版的知识星球和技术交流群。
一份可视化特征图的代码
|
机器学习/深度学习 城市大脑 人工智能
人狠话不多!阿里成立半导体公司「平头哥」:首款 AI 芯片明年面世
9 月 19 日上午,由杭州市政府与阿里巴巴主办、最具影响力的云计算峰会——「云栖大会」在杭州开幕。大会首日,阿里巴巴发布了城市大脑 2.0 版,宣布成立「平头哥」半导体公司开发 AI 芯片,吸引了众人关注。
1496 0
人狠话不多!阿里成立半导体公司「平头哥」:首款 AI 芯片明年面世