这是我的App.Config中的SMTP设置:
<system.net>
<mailSettings>
<smtp from="Reminder <reminder@myserver.com>">
<network host="mail.myserver.net" port="587" password="my password" userName="reminder@myserver.com" enableSsl="true"/>
</smtp>
</mailSettings>
</system.net>
这是我发送电子邮件的方式:
message.SubjectEncoding = System.Text.Encoding.UTF8;
message.BodyEncoding = System.Text.Encoding.UTF8;
smtpClient.Send(message);
这个代码能够正常运行!但唯一的问题是,我的邮件被归为垃圾邮件,因为它们的头部缺少Message-Id。当我使用Thunderbird发送电子邮件时,使用同一帐户时,Message-Id会自动添加到我的邮件中,但是从我的应用程序发送的邮件没有发生同样的情况。
我可以手动添加头部信息,例如:
message.Headers.Add("Message-Id","<3BD50098E401463AA228377848493927-1>");
但是这个ID并不是一个有效的消息ID,我仍然会因此获得负面的垃圾邮件分数。
有任何想法为什么会这样发生?这是我在Thunderbird中拥有的设置: 主机:mail.korax.net / 身份验证:普通密码 / 端口:587 / 安全性:STARTTLS