How to use a Hotmail / outlook account to send email in c#

I'm trying to use an account to send email, with my project in c#, using namespace System.Net.Mail, but I can not authenticate on the outlook server, it throws me the exception:

System.Net. Mail. SmtpException: 'mailbox not available. To server response was: 5.7.3 Requested action aborted; user not authenticated '

Follow My Code:

private void Email()
{

     SmtpClient client = new SmtpClient("smtp-mail.outlook.com");
     client.Port = 587;
     client.DeliveryMethod = SmtpDeliveryMethod.Network;
     client.UseDefaultCredentials = false;
     System.Net.NetworkCredential credentials =
         new System.Net.NetworkCredential("[email protected]", "minhasenha");
     client.EnableSsl = true;
     client.Credentials = credentials;
     client.TargetName = "smtp-mail.outlook.com";
     try
     {
         MailMessage mail = new MailMessage();
         mail.From = new MailAddress("[email protected]",string.Empty,System.Text.Encoding.UTF8);
         mail.To.Add (new MailAddress("[email protected]"));
         mail.Subject = "Teste de e-mail";

         mail.Body = "Teste de e-mail";
         client.Send(mail);
     }
     catch (Exception ex)
     {
         Console.WriteLine(ex.Message);
         throw ex;
     }
 }
Author: Taisbevalle, 2017-06-28

1 answers

This code suits me well:

MailMessage mail = new MailMessage("remetente", "destinatario");
SmtpClient client = new SmtpClient();

client.EnableSsl = true;
client.Host = "smtp-mail.outlook.com";
client.UseDefaultCredentials = false;
client.Credentials = new System.Net.NetworkCredential("email", "senha");

client.Port = 587;
client.DeliveryMethod = SmtpDeliveryMethod.Network;

mail.Subject = "teste";
mail.Body = "teste2";

client.Send(mail);

In addition to going to the Hotmail settings and enabling the use of applications, in the account settings.

 0
Author: Cassio Alves, 2017-06-29 13:35:59