C#发送邮件

 
   private void sendmail()

        {
            string mailServerName = "smtp.sina.com";  //发送邮件的SMTP服务器
            string mailFrom = "liya20150602@sina.com";   //发件人邮箱(上边写的是163服务器,这必须是163邮箱,至于收件人邮箱无所谓)
            string mailTo = "liya20150602@163.com";   //收件人邮箱
            string subject = "邮件发送测试";  //邮件主题
            string body = "文章内容内推";  //邮件正文

            MailMessage mail = new MailMessage(mailFrom,mailTo,subject,body);
          
            //设置邮箱smtp服务器  端口
            SmtpClient client = new SmtpClient(mailServerName, 25);
            
            //指定发送方式 

            client.DeliveryMethod = SmtpDeliveryMethod.Network;

            client.UseDefaultCredentials = false;
            //mail.Body=this.message.Text.ToString();   
            // 验证邮箱用户名 密码
            //NetworkCredential work = new NetworkCredential("testerror", "**********");
            NetworkCredential work = new NetworkCredential("liya20150602", "********");

            //验证 用户名 密码
            client.Credentials = work;
            client.EnableSsl = true;
            try
            {

                client.Send(mail);
                this.Response.Write("<script>alert('Sent Successfully.');</script>");
            }
            catch (Exception ex) {

                HttpContext.Current.Response.Write(ex.Message);
            }


        }

 

错误罗列:

1、使用testerror@sina.cn   SmtpClient client = new SmtpClient("smtp.sina.cn");  邮件发送成功但收不到邮件

2、使用liya20150602@sina.com   SmtpClient client = new SmtpClient("smtp.sina.com");  SMTP 服务器要求安全连接或客户端未通过身份验证,sina邮箱bug 没法开启stmp

3、使用liya20150602@163.com   SmtpClient client = new SmtpClient("smtp.163.com"); 不允许使用邮箱名称

4、 使用liya20150602@163.com SmtpClient client = new SmtpClient("smtp.163.com",587);发送邮件失败。

 使用liya20150602@sina.com 开启stmp后发送成功

注意红色部分顺序 否则出错SMTP 服务器要求安全连接或客户端未通过身份验证。 服务器响应为: Authentication required

以html方式发送 message.IsBodyHtml = true;

 

posted on 2016-01-05 09:47  liumumu  阅读(102)  评论(0)    收藏  举报