无论如何都要知道使用openpop交付状态是成功还是失败?
ContentType {multipart/report; report-type=delivery-status;
boundary=24a0c351-fefd-4069-ac9e-a140c0e98b78}
System.Net.Mime.ContentType
using (Pop3Client client = new Pop3Client())
{
client.Connect(server, 110, false);
client.Authenticate(Usuario, Password, AuthenticationMethod.Auto);
int messageCount = client.GetMessageCount();
List<Message> allMessages = new List<Message>(messageCount);
for (int i = messageCount; i > 0; i--)
{
allMessages.Add(client.GetMessage(i));
}
}
答案 0 :(得分:0)
我找到了这个解决方案 https://github.com/eric-b/DSN-Parser
MailDeliveryInfo.TryCreate(string rawMessage)
评估MailDeliveryInfo.IsDsn(rawMessage)并尝试解析报告。如果失败或者它不是报告,则返回null。
解析的信息
基本上,MailDeliveryInfo的每个实例都定义:
约会, 原始报告(包含Content-Type:message / delivery-status), 状态列表,每个状态都与电子邮件相关联(见下文), 任意Uid属性(未由辅助方法填充):调用者可以使用它来存储报告标识符(例如,来自POP3)。 还可以访问原始(未传递)消息的标题。
每个状态基本上定义:
一个动作(即&#34;失败&#34;,&#34;延迟&#34;,&#34;交付&#34;,&#34; Relayed&#34;或&#34; Expanded&#34 ), 状态代码(即&#34; 5.1.1&#34;), 分类字符串(即&#34; PermanentFailure / AddressingStatus / BadDestinationMailboxAddress&#34;), 诊断代码(即&#34; smtp; 550-5.1.1您尝试访问的电子邮件帐户不存在。&#34;)。