共用方式為


ASP.NET 的快取組態

更新:2007 年 11 月

ASP.NET 提供許多設定網頁輸出快取和快取 API 的選項。網頁輸出快取是在網頁回應經過處理後快取這些回應,而快取 API 則是透過程式設計方式快取應用程式資料。如需詳細資訊,請參閱 ASP.NET 快取概觀

網頁輸出快取組態

您可以在下列位置設定網頁輸出快取:

  • 組態檔:您可以在應用程式組態階層架構的任何組態檔中設定網頁輸出快取,其中包含 Machine.config 檔 (設定電腦上所有的 Web 應用程式) 和應用程式特定的 Web.config 檔 (設定單一應用程式)。

  • 個別網頁:您可以用宣告或程式設計方式在個別網頁中設定快取選項。您也可以將組態檔中建立的快取設定檔套用至個別網頁。

  • 使用者控制項:您可以用宣告或程式設計方式在個別使用者控制項中設定快取。對於沒有被快取的網頁而言,這是快取其內容的簡易方式。

Web.config 快取組態設定

在 Web.config 檔中有兩個最上層組態區段是用於網頁輸出快取:OutputCacheSectionOutputCacheSettingsSection

OutputCacheSection 區段可用於設定應用程式範圍的設定,例如是否啟用或停用網頁輸出快取。例如,您可以在 Web.config 檔中將 enableOutputCache="false" 加入至 OutputCacheSection,藉以停用整個應用程式的網頁輸出快取。組態檔中的設定會比個別網頁的快取設定優先採用,所以範例設定表示不會使用輸出快取。

OutputCacheSettingsSection 則是用來設定個別網頁可以使用的設定檔和相依性。例如,下列程式碼會建立名為 CacheProfile1 的 OutputCacheProfile,這個設定檔將會快取 60 秒實作的網頁:

<outputCacheSettings>
  <outputCacheProfiles>
    <add name="CacheProfile1" duration="60" />
  </outputCacheProfiles>
</outputCacheSettings>

Machine.config 快取組態設定

Machine.config 檔的組態區段與 Web.config 檔的相同,不同的是您可以鎖定 Machine.config 檔中的組態設定,使得任何層級的個別應用程式都無法覆寫這些設定。在共用裝載案例中可能會需要這項功能,因為主應用程式可能不想讓個別應用程式修改快取組態。如需詳細資訊,請參閱 HOW TO:鎖定 ASP.NET 組態設定

網頁快取組態設定

您可以套用在組態檔中定義的快取設定檔,設定個別網頁中的快取。或者,您也可以在 @ OutputCache 指示詞中,或是設定頁面類別定義中的屬性 (Attribute),藉以設定個別快取屬性 (Property)。如需詳細資訊,請參閱 @ OutputCache設定網頁的快取性

使用者控制項快取組態設定

您可以在使用者控制項檔案中設定 @ OutputCache 指示詞,或是在控制項的類別定義中設定 PartialCachingAttribute 屬性,從而設定使用者控制項快取。如需詳細資訊,請參閱ASP.NET Web 網頁的快取部分

快取 API 組態設定

您可以在 Web.config 檔中設定應用程式的快取 API。當使用網頁輸出快取時,主應用程式可以在 Machine.config 檔中設定組態屬性,並且鎖定所有應用程式的快取組態設定。應用程式快取 API 是在 CacheSection 中設定。例如,您可以使用下列組態項目停用項目到期:

<cache disableExpiration="true" />

您也可以在組態檔的 CacheSection 中,指派值給屬性 (例如 DisableExpirationDisableMemoryCollection),藉以指定其他應用程式快取 API 組態設定。

請參閱

概念

ASP.NET 快取概觀

快取 ASP.NET Web 網頁

快取應用程式資料

ASP.NET 組態概觀

其他資源

ASP.NET 組態檔