为什么我们使用Response.ClearHeaders()?

Utk*_*rsh 6 c# asp.net download httpresponse

我复制了一个代码片段来将文件发送到浏览器.我不知道为什么我们使用下面写的行因为删除这些在我的开发环境中没有任何区别.

Response.Clear();
Response.ClearHeaders();
Response.Buffer = false;
Run Code Online (Sandbox Code Playgroud)

任何人都可以简单地分解这些目的和适当性.

谢谢

Ste*_*eve 10

Response.Clear();

如果您已经将任何内容写入缓冲区,则需要清除该内容,因此无法包含多余的内容.

Response.ClearHeaders();

例如,如果先前已指定了内容类型,则您可能不希望这样.可能已经设置了任意数量的HTTP标头 - 缓存控制是另一个很好的例子.

Response.Buffer = false;

如果您准备好将文件转储出来,就没有意义缓冲输出...只需发送它并且不浪费内存.