C#SmtpClient - 身份验证错误

时间:2016-07-27 10:21:28

标签: c# email smtp

我有一个简单的方法,应该发送下面的电子邮件,但我无法让它工作。

private void sendEmail(string mailto, string mailfrom, string subject, string body)
{
    try
    {

            MailMessage mail = new MailMessage();
            SmtpClient SmtpServer = new SmtpClient(Properties.Settings.Default.smtpServer);

            mail.From = new MailAddress(Properties.Settings.Default.mailFrom);
            mail.To.Add(Properties.Settings.Default.emailTo);
            mail.Subject = subject;
            mail.Body = body;
            SmtpServer.EnableSsl = true;
            SmtpServer.UseDefaultCredentials = false;
            SmtpServer.Port = Properties.Settings.Default.smtpPort;
            SmtpServer.Credentials = new System.Net.NetworkCredential(Properties.Settings.Default.smtpServer, Properties.Settings.Default.emailPassword);
            SmtpServer.DeliveryMethod = SmtpDeliveryMethod.Network;
            SmtpServer.Timeout = 200000;
            SmtpServer.Send(mail);
    }
    catch (Exception ex)
    {
        logAndLoad(ex.Message.ToString(), "sendEmail");
    }
}

我已经在运行时检查了凭据,端口,服务器等,所有内容都已检出,但我得到了以下内容:

  

SMTP服务器需要安全连接,否则客户端不需要   认证。服务器响应为:5.5.1需要身份验证。   

了解更多信息

我正在尝试使用我的个人Gmail帐户,因此我将其用作mailfrom地址,也作为凭据的一部分。密码是100%正确,我正在尝试使用端口587和smtp服务器smtp.gmail.com

任何想法都会非常感激。

问题与建议的副本有所不同,因为我已经尝试了那里的步骤,我已经在使用System.Net.Mail

请参阅修改后的代码,它与其他问题中的建议相符,但仍然失败。

0 个答案:

没有答案