我要发送电子邮件,但错误说无法发送电子邮件我的代码有什么问题

问题描述

var userClient = new SmtpClient("smtp.gmail.com")
            {
                Port = 587,Credentials = new NetworkCredential("email_sender","sender_password"),EnableSsl = true
            };
userClient.Send("email_sender","email_reciver","body","subject");

有我用的代码,问题出在哪里?!

解决方法

我建议更新您的 SmtpClient 设置以设置 DeliveryMethod 和 UserDefaultCredentials 属性:

var userClient = new SmtpClient("smtp.gmail.com")
{
    Port = 587,EnableSsl = true,DeliveryMethod = SmtpDeliveryMethod.Network,UseDefaultCredentials = false,Credentials = new NetworkCredential("email_sender","sender_password")
};

userClient.Send("email_sender","email_reciver","body","subject");

我在过去看到,如果您不设置 DeliveryMethod,则会遇到身份验证问题。

我还会检查 email_sender 和 email_password 凭据是否正确。