Como salvar anexos de email usando o OpenPop
Eu criei um aplicativo de e-mail da Web, como faço paraVisão eSalve arquivos anexados?
estou usandoOpenPop, uma dll de terceiros, eu posso enviar e-mails com anexos e ler e-mails sem anexos.
Isso funciona bem:
<code>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); </code>
Essa segunda parte do código exibe o conteúdo do anexo, mas isso é útil apenas se for um arquivo de texto. Eu preciso ser capaz deSalve o anexo. Além disso, a parte inferior do código que tenho aqui escreve o corpo da minha mensagem, portanto, se eu receber um anexo, não consigo visualizar meu corpo da mensagem.
<code>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 } } } </code>