2015-03-10 2 views
1

Я пытаюсь отправить код электронной почты в asp.net mvc, но я продолжаю получать сообщение об ошибке {«Отказ отправки почты».} Я упомянул многие из заданных здесь вопросов и опробовал предлагаемые решения, но по-прежнему получили ту же ошибку. Где я иду не так?
Вот мой код:Ошибка электронной почты в C#

private static void SendEmailWithErrors(string result) 
    { 
     SmtpClient smtpclient = new SmtpClient(); 
     MailMessage message = new MailMessage(); 
     try 
     { 
      MailAddress fromAddress = new MailAddress("email address"); 
      smtpclient.Host = "smtp.gmail.com"; 
      smtpclient.Port = 587; 
      smtpclient.UseDefaultCredentials = true; 
      smtpclient.EnableSsl = true; 
      smtpclient.Credentials = new System.Net.NetworkCredential("email address", "password"); 
      message.From = fromAddress; 
      message.To.Add("email address"); 
      message.Subject = "Exception raised"; 
      message.IsBodyHtml = false; 
      message.Body = result; 
      smtpclient.Send(message); 
     } 
     catch(Exception ex) 
     { 

     } 
    } 
+0

Отказ от отправки почты является общим для них. Можете ли вы опубликовать трассировку стека? Я предполагаю, что это исключение, так что говорит ваш отладчик? – JNYRanger

+0

Какое исключение? Можете ли вы опубликовать трассировку стека? – nXu

+0

Проверьте исключение, предложенное @nXu, возможно, вы находитесь под брандмауэром, и это может помешать вам получить доступ к почтовым серверам. – CarbineCoder

ответ

0

Проверить в свой Email ID, из которого вы отправляете сообщение. Существует вероятность, что вам отправлено письмо с предупреждением о том, что кто-то пытается незаконно получить доступ к вашей почте. Просто убедитесь, что вы снижаете безопасность своей электронной почты, чтобы позволить сторонним приложениям получить к ней доступ. В случае Gmail это делается в настройках конфиденциальности. Он должен работать нормально после того, как безопасность адреса электронной почты будет снижена.

0
private static void SendEmail(string result) 
{ 

    var fromAddress = new MailAddress("[email protected]", "From Name"); 
    var toAddress = new MailAddress("[email protected]", "To Name"); 

    var smtp = new SmtpClient 
    { 
    Host = "smtp.gmail.com", 
    Port = 587, 
    EnableSsl = true, 
    DeliveryMethod = SmtpDeliveryMethod.Network, 
    UseDefaultCredentials = false, 
    Credentials = new NetworkCredential(fromAddress.Address, fromPassword) 
    }; 
    using (var message = new MailMessage(fromAddress, toAddress) 
    { 
    Subject = "Mail Subject", 
    Body = result 
    }) 
    { 
    smtp.Send(message); 
    } 
} 
+0

Используйте пример кода выше. – Compiler

0

Благодарим всех вас за отправку ответов. Код работает нормально, когда я запускаю приложение с сервера.