• Asp.net(c#)发送电子邮件


    using System;  
    using System.Net;  
    using System.Net.Mail;  
    using System.Net.Mime;  
    namespace Fish 
    {  
        
    /// <summary>  
        
    /// 发送邮件的类  
        
    /// </summary>  

        public class SendMail  
        
    {  
            
    private MailMessage mailMessage;  
            
    private SmtpClient smtpClient;  
            
    private string password;//发件人密码  
            /// <summary>  
            
    /// 处审核后类的实例  
            
    /// </summary>  
            
    /// <param name="To">收件人地址</param>  
            
    /// <param name="From">发件人地址</param>  
            
    /// <param name="Body">邮件正文</param>  
            
    /// <param name="Title">邮件的主题</param>  
            
    /// <param name="Password">发件人密码</param>  

            public SendMail(string To, string From, string Body, string Title, string 
    Password)  
            
    {  
                mailMessage 
    = new MailMessage();  
                mailMessage.To.Add(To);  
                mailMessage.From 
    = new System.Net.Mail.MailAddress(From);  
                mailMessage.Subject 
    = Title;  
                mailMessage.Body 
    = Body;  
                mailMessage.IsBodyHtml 
    = true;  
                mailMessage.BodyEncoding 
    = System.Text.Encoding.UTF8;  
                mailMessage.Priority 
    = System.Net.Mail.MailPriority.Normal;  
                
    this.password = Password;  
            }
      
            
    /// <summary>  
            
    /// 添加附件  
            
    /// </summary>  

            public void Attachments(string Path)  
            
    {  
                
    string[] path = Path.Split(',');  
                Attachment data;  
                ContentDisposition disposition;  
                
    for (int i = 0; i < path.Length; i++)  
                
    {  
                    data 
    = new Attachment(path[i], MediaTypeNames.Application.Octet);//实例化 
    附件  
                    disposition 
    = data.ContentDisposition;  
                    disposition.CreationDate 
    = System.IO.File.GetCreationTime(path[i]);//获取 
    附件的创建日期  
                    disposition.ModificationDate 
    = System.IO.File.GetLastWriteTime(path[i]);// 
    获取附件的修改日期  
                    disposition.ReadDate 
    = System.IO.File.GetLastAccessTime(path[i]);//获取附 
    件的读取日期  
                    mailMessage.Attachments.Add(data);
    //添加到附件中  
                }
      
            }
      
            
    /// <summary>  
            
    /// 异步发送邮件  
            
    /// </summary>  
            
    /// <param name="CompletedMethod"></param>  

            public void SendAsync(SendCompletedEventHandler CompletedMethod)  
            
    {  
                
    if (mailMessage != null)  
                
    {  
                    smtpClient 
    = new SmtpClient();  
                    smtpClient.Credentials 
    = new System.Net.NetworkCredential 
    (mailMessage.From.Address, password);
    //设置发件人身份的票据  
                    smtpClient.DeliveryMethod = System.Net.Mail.SmtpDeliveryMethod.Network;  
                    smtpClient.Host 
    = "smtp." + mailMessage.From.Host;  
                    smtpClient.SendCompleted 
    += new SendCompletedEventHandler 
    (CompletedMethod);
    //注册异步发送邮件完成时的事件  
                    smtpClient.SendAsync(mailMessage, mailMessage.Body);  
                }
      
            }
      
            
    /// <summary>  
            
    /// 发送邮件  
            
    /// </summary>  

            public void Send()  
            
    {  
                
    if (mailMessage != null)  
                
    {  
                    smtpClient 
    = new SmtpClient();  
                    smtpClient.Credentials 
    = new System.Net.NetworkCredential 
    (mailMessage.From.Address, password);
    //设置发件人身份的票据  
                    smtpClient.DeliveryMethod = System.Net.Mail.SmtpDeliveryMethod.Network;  
                    smtpClient.Host 
    = "smtp." + mailMessage.From.Host;  
                    smtpClient.Send(mailMessage);  
                }
      
            }
      
        }
      
    }
      

  • 相关阅读:
    转载JGTM' 2004[MVP]有关AOP的三篇精彩文章
    新增Skin
    发表文章的要求
    自定义UserControl的属性为什么不能在设计时显示在属性窗口中
    .Text学习笔记(一)
    访问类的private或internal成员[转载]
    博客园对发表文章的一些要求
    博客园成立了管理团队
    推荐一篇介绍.NET MetaData的文章
    让大家久等了:终于完成了AOP尝鲜系列之第三部[JGTM'2004 [MVP]文章转载]
  • 原文地址:https://www.cnblogs.com/xie/p/1252040.html
Copyright © 2020-2023  润新知