如何使用ASP.NET MVC控制器操作将文件发送到浏览器?

时间:2009-10-13 15:34:22

标签: asp.net-mvc file-io

我有一个应用程序,我允许我的用户上传任何类型的文件。我将其保存在服务器上的文件系统中。该应用程序只能由两个用户访问,因此我不必担心上传任何狡猾的文件。

如何让我的用户按下MVC表单上的按钮来请求通过浏览器发回文件并显示标准的保存/打开对话框?

我想返回任何类型的文件,我发现的示例总是指定要返回的文件类型。有一个简单的例子吗?

2 个答案:

答案 0 :(得分:4)

请参阅FileResult和派生类。

答案 1 :(得分:1)

另一种方法是将HttpContext.Response.ContentType设置为正确的mimetype,然后使用HttpContext.Response.OutputStream.Write()写入文件的内容。

例如,如果数据不在本地文件中但作为二进制blob存储在数据库中,则非常有用。