Как отправить электронное письмо с C # через Gmail

Я получаю сообщение об ошибке при попытке отправить электронное письмо через мой веб-сервис. Я попытался разрешить доступ к менее защищенным приложениям, отключив двухэтапную проверку и войдя в учетную запись через веб-браузер. Ни одно из решений по SO не сработало для меня. Я все еще получаю:

Ошибка: System.Net.Mail.SmtpException: SMTP-сервер требует безопасного соединения или клиент не прошел проверку подлинности. Ответ сервера: 5.5.1 Требуется аутентификация.

Что я могу сделать, чтобы исправить эту проблему?

namespace EmailService
{
    public class Service1 : IService1
    {    
        public string SendEmail(string inputEmail, string subject, string body)
        {
            string returnString = "";
            try
            {
                MailMessage email = new MailMessage();
                SmtpClient smtp = new SmtpClient();
                smtp.Host = "smtp.gmail.com";

                // set up the Gmail server
                smtp.EnableSsl = true;
                smtp.Port = 587;
                smtp.Credentials = new System.Net.NetworkCredential("[email protected]", "mypassword");
                smtp.DeliveryMethod = SmtpDeliveryMethod.Network;
                smtp.UseDefaultCredentials = false;

                // draft the email
                MailAddress fromAddress = new MailAddress("[email protected]");
                email.From = fromAddress;
                email.To.Add(inputEmail);
                email.Subject = body;
                email.Body = body;

                smtp.Send(email);

                returnString = "Success! Please check your e-mail.";
            }
            catch(Exception ex)
            {
                returnString = "Error: " + ex.ToString();
            }
            return returnString;
        }
    }
}

Ответы на вопрос(1)

Ваш ответ на вопрос