2013-03-21 1 views
2

Я пытался отправить email с помощью gmail account на asp.net C#, но я получаю эту ошибку:отправка электронной почты (Gmail) в asp.net

A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond [2607:f8b0:400c:c01::6c]:587

Я пробовал различные коды из различных ресурсов, но ни один из них не работал с моим проектом более я попробовал эти шаги, но по-прежнему не работает:

  1. пытающиеся порты 25, 465, 587 на обоих VS 2012 сервере и локальном хосте (IIS 7).
  2. Брандмауэр выключен, установлен антивирус.
  3. запуск визуальной студии как администратор.

Возможно, кто-нибудь скажет мне, в чем причина этой ошибки. и если есть возможность изменить что-то, где я должен начать ..

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Web; 
using System.Web.UI; 
using System.Web.UI.WebControls; 

public partial class Default6 : System.Web.UI.Page 
{ 
    protected void Page_Load(object sender, EventArgs e) 
    { 
     var myMailMessage = new System.Net.Mail.MailMessage(); 
     myMailMessage.From = new System.Net.Mail.MailAddress("[email protected]"); 
     myMailMessage.To.Add("[email protected]");// Mail would be sent to this address 
     myMailMessage.Subject = "Feedback Form"; 
     myMailMessage.Body = "Hello"; 

     var smtpServer = new System.Net.Mail.SmtpClient("smtp.gmail.com"); 
     smtpServer.Port =587; 
     smtpServer.Credentials = new System.Net.NetworkCredential("[email protected]", "**YOURPASSWORD**"); 
     smtpServer.EnableSsl = true; 
     smtpServer.Send(MyMailMessage); 

     Response.Redirect("Default.aspx"); 
    } 
} 
+0

Покажите нам код, пожалуйста –

+0

возможно дубликат [Отправка электронной почты в .NET через Gmail] (http://stackoverflow.com/questions/32260/sending-email-in-net-through-gmail) – Charlino

+0

Я использовал этот, но все еще не работает :( – reaz

ответ

0

вы можете попробовать это:

MailMessage mail = new MailMessage(); 
mail.Subject = "Your Subject"; 
mail.From = new MailAddress("senderMailAddress"); 
mail.To.Add("ReceiverMailAddress"); 
mail.Body = "Hello! your mail content goes here..."; 
mail.IsBodyHtml = true; 

SmtpClient smtp = new SmtpClient("smtp.gmail.com", 587); 
smtp.EnableSsl = true; 
NetworkCredential netCre = new NetworkCredential("SenderMailAddress","SenderPassword"); 
smtp.Credentials = netCre; 

try 
    { 
    smtp.Send(mail);     
    } 
    catch (Exception ex) 
    {   
    } 
+0

Спасибо за ваш ответ , но я пробовал разные способы, и никто из них не работал. Может быть, проблема с моим провайдером интернет-услуг, потому что недавно я узнал что gmail-логин не работает даже при просмотре. – reaz

+0

вы можете подключиться к gmail с помощью браузера? – Arshad

+0

да, я могу войти в браузер, но проблема заключается в использовании приложений и портов (поп ... и т. д.).) – reaz

2

Попробуйте это,
Добавить пространство имен

system.net; system.net.mail;

protected void Button1_Click(object sender, EventArgs e) 
    { 
     MailMessage MyMailMessage = new MailMessage(); 

     MyMailMessage.From = new MailAddress("from"); 

     MyMailMessage.To.Add("to"); 

     MyMailMessage.Subject = "Feedback Form"; 

     MyMailMessage.Body = "This is the test message from xx for testing mail send"; 

     MyMailMessage.IsBodyHtml = true; 

     SmtpClient SMTPServer = new SmtpClient("smtp.gmail.com"); 

     SMTPServer.Port = 587; 

     SMTPServer.Credentials = new System.Net.NetworkCredential("username","password"); 

     SMTPServer.EnableSsl = true; 

     try 
     { 

      SMTPServer.Send(MyMailMessage); 

      //Response.Redirect("Thankyou.aspx"); 

     } 

     catch (Exception ex) 
     { 



     }