Asp.net mvc MVC发布表单,但可选择返回下载或内容
所以我有一个表单操作,上传一个文档并处理它Asp.net mvc MVC发布表单,但可选择返回下载或内容,asp.net-mvc,upload,download,return,Asp.net Mvc,Upload,Download,Return,所以我有一个表单操作,上传一个文档并处理它 [HttpPost] public ActionResult Upload(FormCollection col) {} 但是我想返回并下载(不是链接),而是下载刚刚开始,或者在页面上显示一些html内容 我应该返回什么,是否需要更改属性(HttpPost)?最终,无论您将HTML页面或文件返回到浏览器,都只是HTTP 您只需将内容类型http响应头设置为文件的正确mime类型,还可以选择设置内容处置头以设置文件名()。这是可
[HttpPost]
public ActionResult Upload(FormCollection col)
{}
但是我想返回并下载(不是链接),而是下载刚刚开始,或者在页面上显示一些html内容
我应该返回什么,是否需要更改属性(HttpPost)?最终,无论您将HTML页面或文件返回到浏览器,都只是HTTP
您只需将内容类型http响应头设置为文件的正确mime类型,还可以选择设置内容处置头以设置文件名()。这是可以放入操作方法中的代码
bool shouldDownload = true;
if (shouldDownload)
{
Response.AddHeader("Content-disposition", "attachment; filename=guitars_11.jpg");
return File(@"c:\Temp\guitars_11.jpg", "image/jpeg");
}
else
{
return View();
}
[HttpPost]属性可以保留-它只对路由有影响(如果请求是POST请求,则将调用该操作)。它对返回的内容没有影响