Content-Disposition文件名无法在IE上运行

mac*_*cha 6 c# asp.net http content-disposition http-headers

我正在开发一个asp.net/c# web应用程序,允许用户查看和下载PDF文件.当我点击一个文件时,我会在浏览器中可用的PDF阅读器中查看,当我保存它时,该文件应该保存为我通过标题传递的名称.但这不是IE7和IE8中的行为

FileInfo f = new FileInfo(FileName);
Response.ContentType = "application/pdf";
Response.AddHeader("Content-Disposition", "inline; filename=" + f.Name)
Run Code Online (Sandbox Code Playgroud)

当我单击以保存文件时,我发送的文件名不用于保存文件,但正在使用URL中的aspx页面的文件名.这是IE中的一个错误.当我在Google Chrome上试用它时,一切正常.

Ale*_*lex 5

尝试Response.AddHeader("Content-Disposition", "attachment;filename=\"" + f.name + "\"");Inline不能在IE 7-8下运行.

  • 我认为文件名应该用引号`Response.AddHeader("Content-Disposition","attachment; filename = \""+ f.name +"\"")括起来. (3认同)