在哪些情况下HttpResponse.SupportsAsyncFlush返回false

时间:2013-01-04 16:38:06

标签: asp.net .net iis httpcontext

HttpResponse对象上有一个名为SupportsAsyncFlush的属性,它根据MSDN返回HttpWorkerRequest.SupportsAsyncFlush属性的值。但是,当我通过反编译器查看HttpWorkerRequest.SupportsAsyncFlush属性时,我可以看到它已经返回false,这让我觉得我错过了一些东西。

由于HttpWorkerRequest是一个抽象类,我认为托管层(IIS等)实现了这个类,并在需要时覆盖HttpWorkerRequest.SupportsAsyncFlush虚拟属性?如果是这种情况,HttpContext.Response.SupportsAsyncFlush在IIS下返回false?

2 个答案:

答案 0 :(得分:1)

所有IIS 7.0+主机都会覆盖此属性以返回true。如果正在使用自定义主机,则主机必须尽力覆盖该属性以返回true。例如,Cassini主机不支持异步刷新,因此不会覆盖该属性。

tl;博士:如果您在IIS或IIS Express中运行,则可以保证这将返回true。

答案 1 :(得分:-1)

如果支持异步刷新操作,则返回true。否则它将返回false。