Pregunta

Tengo este código aquí donde puedo recuperar un archivo adjunto de un mensaje de correo electrónico que se encuentra en el servidor de Exchange utilizando EWS

            Attachment attachment = message.Attachments.Single(att => att.ContentId == Request.QueryString["cid"]);
            attachment.Load();
            FileAttachment fileAttachment = attachment as FileAttachment;


            fileAttachment.Load();
            byte[] bytes = fileAttachment.Content;
            Stream theMemStream = new MemoryStream();

            theMemStream.Write(bytes, 0, bytes.Length);

            return new FileStreamResult( theMemStream, attachment.ContentType);

puedo descargar el archivo muy bien sin embargo, están corrompidos ... ¿Hay algo que me falta?

¿Fue útil?

Solución

Se puede utilizar un FileContentResult directamente en lugar - de esa manera usted no tiene que ir a través de un MemoryStream. De esta manera, con menos riesgo de romper nada.

return FileContent(fileAttachment.Content, attachment.ContentType);

También puede ser que desee establecer el FileDownloadName si no desea que el archivo en línea de visualización en el navegador.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top