我在ASP.NET MVC + IIS 7.5页面遇到了一些麻烦。我有一个非常广泛的页面,有时超过15.0MB未压缩和1.5MB压缩。
当它发生时,看起来连接永远不会结束。加载图标永远保留,如果我在开发人员工具中看到,则连接正在等待,尽管收到了整个HTML。
它发生在Chrome,Firefox和Internet Explorer上,所以我认为问题是ASP.NET或IIS。
我是否需要做一些特别的事来处理这样的页面?
答案 0 :(得分:5)
15MB将会非常缓慢且无响应 - 这不是您的用户想要的东西 - 无论他们想要“查看所有已发布的文件”。
我会介绍一下,例如,分页到您的网页,所以不是一次下载所有文件。
但是,如果您真的想要一个15MB的页面,您可能会发现limits config可以提供帮助。
答案 1 :(得分:1)
你说可以接受整个HTML。那么IIS或ASP.NET怎么会成为问题呢?一旦内容被发送,它们就不在循环中。
浏览器可能就是问题所在。
答案 2 :(得分:1)
您可以尝试将Response.Buffer设置为false
。
Buffer属性指示是否缓冲页面输出。缓冲页面输出时,服务器不会向客户端发送响应,直到处理完当前页面上的所有服务器脚本,或者直到调用Flush或End方法为止。
默认情况下,Response.Buffer
设置为true
,因此输出将被缓冲。也许通过将响应提供给客户端,浏览器将根据您的需要进行操作。
您需要在任何输出发送到浏览器之前设置Response.Buffer
的值。
答案 3 :(得分:0)
也许尝试IIS压缩?
IIS provides the following compression options:
Static files only
Dynamic application responses only
Both static files and dynamic application responses
http://technet.microsoft.com/en-us/library/cc771003%28v=ws.10%29.aspx