我在处理 OpenPop 以阅读电子邮件正文时遇到问题。
我认为问题是我不知道如何处理图像。
我的最小代码是:
for (int i = messageCount; i > 0; i--)
{
ProcessMessage(client.GetMessage(i)); //the standard call in all examples
client.DeleteMessage(i);
}
public static void ProcessMessage(Message msg)
{
//Parse Message
string from = msg.Headers.From.Address;
string subject = msg.Headers.Subject;
string body = "";
DateTime received = msg.Headers.DateSent;
if (msg.MessagePart.IsMultiPart == false)
{
body = msg.MessagePart.GetBodyAsText();
}
else
{
for (int i = 0; i < msg.MessagePart.MessageParts.Count; i++)
{
MessagePart part = msg.MessagePart.MessageParts[i];
body += part.GetBodyAsText(); **//This is my error line**
}
}
我收到字节数组不能为空的错误。我不明白我错过了什么,但是当正文中有图像(通常在签名中(时会发生此错误。
这是解决我问题的关键:
string body = msg.FindFirstPlainTextVersion().GetBodyAsText();