ASP.NET 2.0中的頁面輸出緩存
2006/9/29 9:48:18
靜態頁面全部內容保存在服務器內存中。當再有請求時,系統將緩存中的相關數據直接輸出,直到緩存數據過期。這個過程中,緩存不需要再次經過頁面處理生命周期。這樣可以縮短請求響應時間,提高應用程序性能。很顯然,頁面輸出緩存適用于不需要頻繁更新數據,而占用大量時間和資源才能編譯生成的頁面。對于那些數據經常更新的頁面,則不適用。默認情況下,ASP.NET 2.0啟用了頁面輸出緩存功能,但并不緩存任何響應的輸出。開發人員必須通過設置,使得某些頁面的響應成為緩存的一部分。

   設置頁面輸出緩存可以使用以下兩種方式:一種是使用@ OutputCache指令,另一種是使用頁面輸出緩存API。@ OutputCache指令曾經在ASP.NET 1.x中出現過,并在ASP.NET 2.0中得到了繼承和增強。頁面輸出緩存API主要是指HttpCachePolicy類。

使用@ OutputCache指令

   使用@ OutputCache指令,能夠實現對頁面輸出緩存的一般性需要。@ OutputCache指令在ASP.NET頁或者頁中包含的用戶控件的頭部聲明。這種方式非常方便,只需幾個簡單的屬性設置,就能夠實現頁面的輸出緩存策略。@ OutputCache指令聲明代碼如下。


@ OutputCache指令代碼

<%@ OutputCache CacheProfile =" " NoStore= "True | False" Duration ="#ofseconds" Shared ="True | False" Location ="Any | Client | Downstream | Server | None | ServerandClient " SqlDependency ="database/table name pair | CommandNotification " VaryByControl ="controlname" VaryByCustom ="browser | customstring" VaryByHeader ="headers" VaryByParam ="parametername" %>

   如上所示,在@ OutputCache指令中,共包括10個屬性,它們是CacheProfile、NoStore、Duration、Shared、Location、SqlDependency、VaryByControl、VaryByCustom、VaryByHeader和VaryByParam。這些屬性將對緩存時間、緩存項的位置、SQL數據緩存依賴等各方面進行設置。下面簡要介紹以上屬性的基本概念。

CacheProfile

   用于定義與該頁關聯的緩存設置的名稱。是可選屬性,默認值為空字符("")。需要注意的是,包含在用戶控件中的@ OutputCache指令不支持此屬性。在頁面中指定此屬性時,屬性值必須與Web.config文件<outputCacheSettings>配置節下的outputCacheProfiles元素中的一個可用項的名稱匹配。如果此名稱與配置文件項不匹配,將引發異常。

NoStore

   該屬性定義一個布爾值,用于決定是否阻止敏感信息的二級存儲。需要注意的是,包含在用戶控件中的@ OutputCache指令不支持此屬性。將此屬性設置為true等效于在請求期間執行代碼“Response.Cache.SetNoStore();”。

Duration

   用于設置頁面或者用戶控件緩存的時間。單位是秒。通過設置該屬性,能夠為來自對象的HTTP響應建立了一個過期策略,并將自動緩存頁或用戶控件輸出。需要注意的是,Duration屬性是必需的,否則將會引起分析器錯誤。

Shared

   該屬性定義一個布爾值,用于確定用戶控件輸出是否可以由多個頁共享。默認值為false。注意,包含在ASP.NET頁中的@ OutputCache指令不支持此屬性。

Location

   用于指定輸出緩存項的位置。其屬性值是OutputCacheLocation枚舉值,它們是Any、Client、Downstream、None、Server和ServerAndClient。默認值是Any,表示輸出緩存可用于所有請求,包括客戶端瀏覽器、代理服務器或處理請求的服務器上。需要注意的是,包含在用戶控件中的@ OutputCache指令不支持此屬性。

SqlDependency

   該屬性標識一組數據庫/表名稱對的字符串值,頁或控件的輸出緩存依賴于這些名稱對。需要注意:SqlCacheDependency類監視輸出緩存所依賴的數據庫中的表,因此,當更新表中的項

下一頁
返回列表
返回首頁 主站蜘蛛池模板: 黄色永久免费网站| 两个人看的视频www在线高清| 欧美黑人巨大白妞出浆| 吃奶呻吟打开双腿做受在线视频 | 欧美xxxx三人交性视频| 人人狠狠综合久久亚洲| 美女扒开尿口给男人看的让| 国产在线高清视频无码| 六月丁香色婷婷| 在体育课被老师做了一节课视频| 一区二区三区中文| 成年男女免费视频网站| 久久国产欧美日韩精品| 极品少妇被啪到呻吟喷水| 亚洲欧美在线播放| 狂野欧美激情性xxxx| 午夜天堂精品久久久久| 色噜噜狠狠狠综合曰曰曰| 国产成人性色视频| 夜夜未满18勿进的爽影院| 在线中文字日产幕| jizz老师喷水| 怡红院成人在线| 中日韩亚洲人成无码网站| 日韩午夜r电影在线观看| 亚洲aⅴ在线无码播放毛片一线天| 欧美综合婷婷欧美综合五月 | 人人添人人妻人人爽夜欢视av| 精品国产免费观看| 国产xxxx做受视频| 韩国特黄特色a大片免费| 国产成人无码精品久久二区三区 | 国产精品三级av及在线观看| 91亚洲精品自在在线观看| 夜夜添无码试看一区二区三区| www.天天干| 小草视频免费观看| 丁香六月久久久| 成人免费无码大片a毛片| 中文字幕影片免费在线观看| 日本xxxx色视频在线播放|