ASP.NET MVC4:IE在同一请求中挂起文件上传和下载

时间:2014-09-16 01:23:25

标签: c# asp.net-mvc-4 internet-explorer http-post

我在Internet Explorer中遇到了难以捉摸的客户端问题。我无法创建上传文件并在同一请求中下载文件的网页。我的应用程序允许用户下载他们上传的文件的修改副本。

这是一个简单的表单帖子事件,没有涉及AJAX,所以视图有这个:

@using (Html.BeginForm("Export", "Report", FormMethod.Post, new { enctype = "multipart/form-data" }))
{
   <input id="physicalFile" name="physicalFile" type="file" />
   ...

控制器中的服务器响应也非常简单:

[HttpPost]
public ActionResult Export(ReportDetailsModel model, HttpPostedFileBase physicalFile)
{
    ... 

    var fileStream = MakeReportFileStream(physicalFile.InputStream);
    return File(fileStream, System.Net.Mime.MediaTypeNames.Application.Octet, "Results.xlsx");
}

但是,提交表单后,Internet Explorer 挂起。太糟糕了,你无法关闭Internet Explorer,必须强行&#34;结束任务&#34;

好奇的因素,包括我尝试过的事情,从最好奇到最不好奇:

  • 如果从表单中删除文件上传控件,会发生,下载工作正常!
  • 如果我从响应中删除了下载,是否会发生;单独上传工作正常!
  • 仍然在所有IE插件已停用
  • 时发生
  • 在其他浏览器(Chrome和Firefox)中不会发生
  • 在使用相同版本的Internet Explorer
  • 的某些计算机(如我的)上不会发生

有什么想法吗?

修改

  • 在机器上管理员无效
  • 强制网站进入&#34;可信网站&#34;并且可用的限制很少。
  • 安装IE11 已解决问题
  • 在混乱的云中,我怀疑IT部门强行将这些配置放到这些机器上。

1 个答案:

答案 0 :(得分:0)

解决方案:安装IE11。

我在IE8和IE9上都看到了这个问题。我没有关于IE10的数据。