2015-05-07 4 views
0

Мой проект должен отправить электронное письмо, но я не могу его отправить. Я не знаю почему. В прошлом месяце я могу отправить, но сегодня я не могу.Не удается отправить письмо с помощью ASP.NET

string url = Request.Url.AbsoluteUri; 
string hyperlink = "<a href='" + url + "'>" + url + "</a>"; 
NetworkCredential loginInfo = new NetworkCredential("***examplemail***", "myPassword"); 
MailMessage msg = new MailMessage(); 
msg.From = new MailAddress("***examplemail***"); 
msg.To.Add(new MailAddress("***ToEmail***")); 
msg.Bcc.Add(new MailAddress("***examplemail***")); 
msg.Subject = "TEST"; 
msg.Body = "Hi, TEST Send E-mail"; 
msg.IsBodyHtml = false; 
SmtpClient client = new SmtpClient("smtp.gmail.com", 995); // tried 25 587 and 995 
client.EnableSsl = true; 
client.UseDefaultCredentials = false; 
client.Credentials = loginInfo; 
client.Send(msg); 

** У него не было никаких ошибок, но я тоже не отправлял.

+1

Если вы пытаетесь 995, это будет ** ** выдаст сообщение об ошибке. Проверьте блоки 'catch'. – SLaks

+0

вы можете обернуть этот код вокруг try {} catch {} 'client.Send (msg);' и отчитаться о том, что такое исключение .. возможно, происходит исключение, но оно просто сейчас бросается .. – MethodMan

+0

У меня есть " Ошибка отправки почты. " –

ответ

0

Я не использовал бы здесь номер порта.

SmtpClient client = new SmtpClient("smtp.gmail.com", 995); // tried 25 587 and 995 

Этот способ он отправляет. Я пробовал, и это сработало. Я говорю, что он должен выглядеть

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

Если проверить конструктор SmtpClient в то время как писать код, который вы увидите, что она имеет одну перегрузку.

-1

Попробуйте это:

using System.Net; 
using System.Net.Mail; 

namespace consSendMail 
{ 
    class Program 
    { 
     static void Main(string[] args) 
     { 
      SmtpClient smtpClient = new SmtpClient 
      { 
       Host = "smtp.gmail.com", 
       Port = 587, 
       EnableSsl = true, 
       Credentials = new NetworkCredential("yourmail", "yourpassword") 
      }; 

      var mailMessage = new MailMessage(); 
      mailMessage.Subject = "Subject"; 
      mailMessage.From = new MailAddress("yourmail", "yourname"); 
      mailMessage.IsBodyHtml = true; 
      mailMessage.Body = "your message";    
      mailMessage.To.Add(new MailAddress("destinationemail")); 

      smtpClient.Send(mailMessage); 

      mailMessage.Dispose(); 
      smtpClient.Dispose(); 
     } 
    } 
} 
+0

И «SmtpClient», и «MailMessage» должны находиться в «использовании» блоков. –

+0

Я тестировал это. Оно работает. Теперь я был отредактирован для завершения примера программы. –

+0

И они все равно должны находиться в блоках 'using', чтобы гарантировать, что они будут очищены быстро, даже в случае исключения. –

 Смежные вопросы

  • Нет связанных вопросов^_^