Microsoft 停用 SmtpClient 的原因可能是什么?

What could be reasons that Microsoft retired SmtpClient?

在 .NET Framework 4.7 文档中, 原因如下:

SmtpClient and its network of types are poorly designed, we strongly recommend you use https://github.com/jstedfast/MailKit and https://github.com/jstedfast/MimeKit instead

我很好奇,也不是这方面的专家。 MS 不得不推荐外部图书馆的这种“设计不佳”可能是什么?对于仍在使用它的项目来说有多糟糕?

SmtpClient 不支持 DKIM(或 SPF)认证。它不会自然发送 RSA 密钥,一些邮件提供商将小于 1024 位的密钥视为垃圾邮件,如 gmailorange.

检查 "A message I sent from my domain wasn't authenticated" 段 here

我最近也更改了我的实现,我建议 MailKit:代码定义几乎相同(允许您保留一个 MailMessage 对象),并且效果很好!

using (var client = new MailKit.Net.Smtp.SmtpClient())
{
      client.Connect(Host, Port, UseSsl);
      client.Authenticate(Credential.UserName, Credential.Password);
      client.Send(MimeMessage.CreateFromMailMessage(new MailMessage()));
      client.Disconnect(true);
}