2

我有这个代码在这里我使用 EWS 从 Exchange 服务器上的电子邮件中检索附件

            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);

我可以很好地下载文件,但是它们已损坏...我缺少什么吗?

4

1 回答 1

2

您可以直接使用FileContentResult - 这样您就不必通过MemoryStream. 这样,您破坏任何东西的风险就会降低。

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

FileDownloadName如果您希望文件在浏览器中内联显示,您可能还需要设置。

于 2010-08-06T07:54:04.413 回答