We have a busy site running ASP.Net on IIS 6. We've just upgraded our web server (changing from IIS 6 to IIS 5) and greatly increased our horsepower. Doing this has brought something to our attention: Buffering seems to be turned on on our web site.
We have disabled buffering in the App Options, and have double-checked and the problem exists on our old IIS 5 server as well.
The result for the user is this: When you pull up a page on the site you get a blank page until the site is fully downloaded, then it renders instantly on the browser. If there are lots of images (we're e-commerce and have pages with multiple product shots) some of them will not finalize until after this first rendering.
For people on dialup this does not produce an acceptable experience. Any ideas? We're going back through our ASP.Net code to look for any response.buffer=true lines.
Have you tried using response.flush? I know it's not exactly the same as turning the buffer off but it should work.
Another thing I just thought of - is all your content inside 1 big table? I believe browsers won't render a table until the </table>. If you are using a table perhaps you should try without and see if it's working then.
I think TheDave has hit the nail on the head. If you press the stop button on your internet explorer before the page is completely loaded and then do a "View Source" - you will be able to see that half of the code has downloaded, but the page has not been rendered because it has not reached the end of the table code.