Как я могу отправить электронное письмо на C#?
MailMessage mail = new MailMessage(); mail.From = new MailAddress("from@gmail.com"); mail.To.Add("to@gmail.com"); mail.Subject = "Hello World"; mail.Body = "<h1>Hello</h1>"; mail.IsBodyHtml = true; mail.Attachments.Add(new Attachment("C:\\report.txt")); using (SmtpClient smtp = new SmtpClient("smtp.gmail.com", 587)) { smtp.Credentials = new System.Net.NetworkCredential("from@gmail.com", "password"); smtp.EnableSsl = true; smtp.Send(mail); MessageBox.Show("Message sent"); }
Что я уже пробовал:
Приведенный выше код прекрасно работал на моем собственном ноутбуке, но когда я использовал его в сетевом ПК (как простой пользователь, а не администратор),
Я столкнулся с этой ошибкой
ystem.Net.Mail.SmtpException: Failure sending mail. ---> System.Net.WebException: Unable to connect to the remote server ---> System.Net.Sockets.SocketException: 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 64.233.162.109:587
F-ES Sitecore
Это сетевая проблема, возможно, этот порт заблокирован на вашем брандмауэре. Google сообщение об ошибке для возможных решений, отправка электронной почты через gmail является одним из наиболее часто задаваемых вопросов, каждая проблема уже была решена много раз, если вы google.