Response.Flush和Response.BufferOutput
阿新 • • 發佈:2019-02-16
首先Response.Buffer屬性現在已經過時,它存在的唯一目的僅僅是為了相容asp。你應該使用Response.BufferOutput屬性來替代它。
Response.Flush方法用來將緩衝區的資料立即輸出到瀏覽器當中。你可以多次呼叫Response.Flush 方法,當這樣使用時,瀏覽器將多次接受資料,而不是僅接受一次資料。
Response.BufferOutput是一個布林值,指示是否緩衝輸出並在整個頁面在伺服器端處理完畢後才傳送緩衝區中的資料。true是其預設值。
伺服器端是否快取資料取決於Response.BufferOutput,當你將Response.BufferOutput的值設為true時,資料會快取到buffer中,並在頁面處理完畢後,將buffer中的內容一次性全部發到客戶端。
只要將Response.BufferOutput的值設定為true,一定會發送buffer裡的內容,只是早晚、次數的問題,這就取決於Response.Flush方法了。
至於它們的作用,在一個很大很大的網頁中,可以使用Response.Flush方法將資料分批發往客戶端,這樣就可以使瀏覽器先呈現一些html程式碼,並逐步完整呈現。這樣可使使用者減少等待時間。不過你要注意一下,傳送的html程式碼必須是閉合完整的,否則有的瀏覽器不會立即呈現html,而是等待接受完整的html才呈現。否則使用它就沒有效果了。