我已经创建了一个 Web 电子邮件应用程序,如何查看和保存附件?
我使用的是第三方 dll OpenPop ,我可以发送带附件的电子邮件,也可以阅读不带附件的电子邮件。
这工作正常:
Pop3Client pop3Client = (Pop3Client)Session["Pop3Client"]; // Creating newPopClient
int messageNumber = int.Parse(Request.QueryString["MessageNumber"]);
Message message = pop3Client.GetMessage(messageNumber);
MessagePart messagePart = message.MessagePart.MessageParts[1];
lblFrom.Text = message.Headers.From.Address; // Writeing message.
lblSubject.Text = message.Headers.Subject;
lblBody.Text=messagePart.BodyEncoding.GetString(messagePart.Body);
代码的第二部分显示附件的内容,但这仅在它是文本文件时才有用。我需要能够保存附件。此外,我在此处的代码的底部部分会覆盖我的邮件正文,因此如果我收到附件,我将无法查看我的邮件正文。
if (messagePart.IsAttachment == true) {
foreach (MessagePart attachment in message.FindAllAttachments()) {
if (attachment.FileName.Equals("blabla.pdf")) { // Save the raw bytes to a file
File.WriteAllBytes(attachment.FileName, attachment.Body); //overwrites MessagePart.Body with attachment
}
}
}