Uwe*_*eim 6 .net c# smtp mailmessage hmail-server
使用.NET中的SmtpClient和MailMessage类通过本地邮件服务器(hMailServer)发送电子邮件,我当前发现无法获取已Message-ID发送邮件的标头值.
背后的想法
我正在尝试以编程方式跟踪无法传递的邮件,因此我必须找到一种方法来识别来自目标SMTP服务器的拒绝某个邮件的回复.
现在我想到只记住Message-IDSMTP标头值并解析此ID的传入邮件.
我发送消息后试图检查Headers集合,但我没有找到任何消息Message-ID.
我的问题
是否可以获取Message-ID我的SMTP服务器在发送MailMessage实例期间添加的标头值?
更新2012-05-27
根据这个例子,我成功地尝试Message-ID在发送之前自己手动生成一个.
到目前为止,我的所有示例都有效,所以这似乎是我的问题的解决方案.
您可以在发送电子邮件之前添加自己的消息 ID。我使用下一个代码:
Guid id = Guid.NewGuid(); //Save the id in your database
mensajeEmail.Headers.Add("Message-Id", String.Format("<{0}@{1}>",id.ToString(),"mail.example.com"));
Run Code Online (Sandbox Code Playgroud)
注意:对于我使用OpenPop.Net 的下载消息,我检查了message.Headers.InReplyTo属性,并且有发送的消息 ID。