2014-12-03 32 views
-1
SmtpClient smtpClient = new SmtpClient("smtp.gmail.com"); 
smtpClient.EnableSsl = true; 
smtpClient.Port = 587; 
smtpClient.Credentials = new System.Net.NetworkCredential("[email protected]", "xxxxxxxx", "smtp.gmail.com"); 
smtpClient.UseDefaultCredentials = false; 

MailMessage mailMessage = new MailMessage(); 
mailMessage.To.Add(TextBox2.Text.Trim()); 
mailMessage.From = new MailAddress("[email protected]"); 
mailMessage.IsBodyHtml = true; 
mailMessage.Subject = "Thanks for registering to Doctor Search"; 
mailMessage.Body = "<a href='http://localhost:1668/templatemo_418_form_pack/OTP.aspx?ctk=" + ss + "'>Click here to verify your Mobile</a>"; 

smtpClient.Send(mailMessage); 

我得到一個錯誤:我得到一個異常的代碼就像未經認證

The SMTP server requires a secure connection or the client was not authenticated. The server response was: 5.5.1 Authentication Required.

我不明白它背後

+1

您是否能夠通過瀏覽器使用您傳遞給smtp憑據的憑據登錄Gamil? – 2014-12-03 11:55:47

回答

0

的原因,我用這個東西:

public void SendEmailWithGmail(string emailContent, string emailRecipients, string emailSubject) 
    { 
     var @from = _emailSendFrom; //Replace this with your own correct Gmail Address 

     var _to = emailRecipients; 


     var mail = new System.Net.Mail.MailMessage(); 
     mail.To.Add(_to); 
     mail.From = new System.Net.Mail.MailAddress(@from, _emailDisplayName, System.Text.Encoding.UTF8);   

     mail.Subject = emailSubject; 
     mail.SubjectEncoding = System.Text.Encoding.UTF8; 
     mail.Body = emailContent; 
     mail.BodyEncoding = System.Text.Encoding.UTF8; 
     mail.IsBodyHtml = true; 
     mail.Priority = System.Net.Mail.MailPriority.High; 


     var client = new SmtpClient 
     { 
      Credentials = new System.Net.NetworkCredential(@from, GmailPsw), 
      Port = 587, 
      Host = "smtp.gmail.com", 
      EnableSsl = true 
     }; 


      client.Send(mail); 

    } 
+0

由於SMTP服務器需要安全連接或客戶端未通過身份驗證,因此出現異常。服務器響應是:5.5.1需要身份驗證。 – 2014-12-03 12:35:24

相關問題