0

我正在将 PDF 传输到 MVC 控制器,将 PDF 保存到数据库并检索它。如果我将 PDF 保存到服务器端的磁盘(在返回文件结果之前),它看起来很好。但是,当我做类似于以下的事情时:

    return File(fileBytesFromDB, "application/pdf", "file.pdf");

并尝试从浏览器(任何浏览器)查看它,PDF 似乎已损坏。事实上,它的大小完全不同。

我错过了什么?

4

2 回答 2

0

我找到了。我的一位同事添加了一个标记器作为返回操作的装饰器,它正在标记文件流。我添加了一些忽略的逻辑FileStreamResultFileContentResult现在 PDF 出来了。

于 2012-05-14T14:10:05.707 回答
0

我还找到了另一个解决方案。在我们的数据库中,我们的表将文件路径、名称、mimetype 存储为 nchar(255),这是一个固定的字符数。即使使用 .Trim(),添加的空格也无法与 FileResult 方法一起使用。通过将列更改为 varchar 解决了我的特定问题

于 2016-09-28T14:14:56.153 回答