HttpResponse是否是公共ASP.NET MVC Action的可接受返回类型?

时间:2010-09-10 20:06:57

标签: asp.net-mvc

我想制作一个Response并添加文件附件头,这是在ASP.NET MVC Action中执行此操作的方法吗?通常我会返回int,string或更常见的ActionResult之类的东西。但是我可以像这样直接将Ht​​tpResponse返回给他们的浏览器吗?

因此,如果他们转到/ controller / action /,它会将HTTP响应返回给他们的浏览器。

1 个答案:

答案 0 :(得分:2)

每当我想要将文件返回给用户时,我都会使用FilePathResult返回类型:

public FilePathResult DownloadFile() {
    FilePathResult file = new FilePathResult("c:\\test.txt", "text/plain");
    return file;
}

第一个参数是本地系统(或网络共享)上文件的路径,第二个参数是您要报告给浏览器的mime类型。如果要手动自定义用户在提示下载时将看到的文件名,可以设置file.FileDownloadName。

编辑:找到一个体面的different options(FilePathResult,FileStreamResult,FileContentResult)概述,你想要多读一遍(帖子的后三分之一)。< / p>