Cómo guardar archivos adjuntos de correo electrónico usando OpenPop
He creado una aplicación web de correo electrónico, ¿Cómover ysalvar ¿archivos adjuntos?
estoy usandoOpenPop, un dll de terceros, puedo enviar correos electrónicos con archivos adjuntos y leer correos electrónicos sin archivos adjuntos.
Esto funciona bien:
<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>
Esta segunda parte del código muestra el contenido del archivo adjunto, pero solo es útil si es un archivo de texto. Necesito ser capaz desalvar el adjunto. También la sección inferior del código que tengo aquí escribe sobre el cuerpo de mi mensaje, así que si recibo un archivo adjunto no puedo ver el cuerpo de mi mensaje.
<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>