MVC4 FileResult PDF损坏

时间:2012-05-04 20:24:16

标签: c# asp.net-mvc-4

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

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

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

我错过了什么?

2 个答案:

答案 0 :(得分:0)

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

答案 1 :(得分:0)

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

来解决我的特定问题