如何在不设置Content-Disposition标签的情况下从控制器返回图像?

时间:2010-12-02 15:01:22

标签: asp.net-mvc-2

所以我使用MVC 2 来提供来自Controller Action的一些图像。一般智慧(123)似乎是使用FileResult类型之一(FileStreamResultFileContentResult或`FileContentResult “)。

然而,所有三个具体的FileResult都将Content-Disposition响应标头设置为attachment; filename{YourFileNameHere}=UTF-8。最终结果是,如果用户直接查看我的图像,而不是嵌入在HTML中,则浏览器会显示保存对话框,而不是显示图像。我希望图像只是在浏览器中显示。

我想这就是我的问题:使用MVC 2在图像 NOT 标记下载的情况下,返回图像结果的适当方法是什么?

1 个答案:

答案 0 :(得分:5)

MVC框架使用FileResult.FileDownloadName属性来确定是以内联方式还是作为附件发送内容。如果直接实例化FileResult派生类型,请不要设置其FileDownloadName属性。或者,如果您正在使用Controller.File工厂方法,请调用不带 fileDownloadName 参数的重载(或者为该参数传入null)。