我收到错误消息“ SMTP服务器需要安全连接或客户端未通过身份验证。服务器响应为:5.7.0必须首先发出STARTTLS命令。u78sm8177860pfi.2-gsmtp”,如果我将EnableSSL = false更改为。虽然如果我将(EnableSSL = True)设置为true,它绝对可以正常工作。但是由于业务需求,我必须保持EnableSSL = false。您能帮我如何通过保持EnableSSL = false来发送电子邮件。下面是我的代码。

var smClient = new System.Net.Mail.SmtpClient();
MailMessage lMail = new MailMessage();

// Create Mail

msg.From = new System.Net.Mail.MailAddress("[email protected]", "Scs");
msg.Subject = "Send Email with EnableSSL set to false";
msg.IsBodyHtml = true;
msg.Body = "Test body";

msg.To.Add(recieptents);
// port="25" enableSsl="false"
 smClient.Port ="25";
smClient.EnableSSL="false"
smClient.Send(lMail);


以下是用于发送电子邮件的设置。

<mailSettings>
  <smtp from="[email protected]">
    <network host="smtp.gmail.com" port="25" enableSsl="false"
  userName="[email protected]" password="*****"
 defaultCredentials="false"/>

  </smtp>
  </mailSettings>

最佳答案

它无法正常工作,因此,如果这真的是企业退休,那么您将需要使用其他SMTP服务器。

根据文档,SSL必须通过Gmail发送:


  外寄邮件(SMTP)服务器
  
  smtp.gmail.com
  需要SSL:是
  需要TLS:是(如果可用)
  需要验证:是
  SSL连接埠:465
  TLS / STARTTLS的端口:587


参考:https://support.google.com/mail/answer/7126229?hl=en

关于c# - 当我设置EnableSSL = false时出现错误,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/53545359/

10-12 16:51