Response.BinaryWrite不能与IE6一起使用

时间:2011-06-21 11:39:01

标签: asp.net response.write

我在某些ASP.NET中使用以下C#代码将文件发送到浏览器:

Response.Clear();
Response.Buffer = true;
Response.AddHeader("content-disposition", "attachment; filename=" + myFileName);
Response.BinaryWrite(myContent);
Response.End();
Response.Close();

在IE7-8,FF3-4和Chrome下,它适用于WebDev.WebServer和IIS7。但不是在IE6下。我不明白为什么它可能是与浏览器相关的问题...

3 个答案:

答案 0 :(得分:1)

尝试添加content-length标题:

Response.AddHeader("content-length", myContent.Length.ToString());

编辑:可能需要的另一个是content-type

Response.AddHeader("content-type", "type here");

答案 1 :(得分:0)

而不是BinaryWrite,请使用TransmitFile。参见示例here

答案 2 :(得分:0)

谢谢大家,答案是:这是由于页面中的Ajax,并且没有按预期禁用Ajax请求。