.net 发邮件

     /// <summary>
     /// 发送邮件
     /// </summary>
     /// <param name="msg">邮件内容</param>
     /// <param name="subject">邮件主题</param>
     /// <param name="File">附件地址</param>
     /// <param name="senderEmail">发件人邮箱</param>
     /// <param name="mail">收件人邮箱</param>
     /// <param name="senderPwd">发件人密码</param>
     /// <returns>发送是否成功</returns>
     public bool SendEmail(string  msg,string subject,string File, string senderEmail, string mail, string senderPwd)
     {
         if (!validateEmail(senderEmail))
         {
             return false;
         }
         SmtpClient Client = new SmtpClient();
         Client.Host = GetSmtp(senderEmail);
         Client.UseDefaultCredentials = false;
         Client.Credentials = new System.Net.NetworkCredential(senderEmail, senderPwd);//登录认证
         MailMessage message = new MailMessage(senderEmail, mail);
         message.Subject = subject;
         message.Body = msg;
         message.BodyEncoding = System.Text.Encoding.UTF8;
         if (File!= null&&File!="")
         {
             Attachment data = new Attachment(File);
             message.Attachments.Add(data);
         }
         try
         {
             Client.Send(message);
             return true;
         }
         catch (Exception)
         {
             return false;
         }
     }


     #region  验证输入为Email
     /// <summary>
     /// 验证输入为Email
     /// </summary>
     /// <param name="str"></param>
     /// <returns></returns>
     public static bool validateEmail(string str)
     {
         return Regex.IsMatch(str, @"\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*");
     }
     #endregion


     #region 得到STMP
     public string GetSmtp(string Email)
     {
         string temp = "";
         string SmtpStr = Email.Substring(Email.IndexOf("@"));
         switch (SmtpStr)
         {
             case "@126.com":
                 temp = "smtp.126.com";
                 break;
             case "@163.com":
                 temp = "smtp.163.com";
                 break;
             case "@sina.com":
                 temp = "smtp.sina.com";
                 break;
             case "@qq.com":
                 temp = "smtp.qq.com";
                 break;
             case "@139.com":
                 temp = "smtp.139.com ";
                 break;
             case "@gmail.com":
                 temp = "smtp.gmail.com ";
                 break;
             case "@hotmail.com":
                 temp = "smtp.hotmail.com ";
                 break;
             case "@foxmail.com":
                 temp = "smtp.foxmail.com ";
                 break;
         }
         return temp;
     }


     #endregion
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值