ASP.NET Core 中的分散式快取標籤協助程式

Peter Kellner 提供

分散式快取標籤協助程式可將 ASP.NET Core 應用程式內容快取至分散式快取來源,因此大幅提升應用程式的效能。

如需標籤協助程式的概觀,請參閱 ASP.NET Core 中的標籤協助程式

分散式快取標籤協助程式繼承自與快取標籤協助程式相同的基底類別。 分散式標籤協助程式可以使用所有快取標籤協助程式屬性。

分散式快取標籤協助程式會使用建構函式插入IDistributedCache 介面會被傳入分散式快取標籤協助程式的建構函式。 如果 Startup.ConfigureServices (Startup.cs) 中沒有建立 IDistributedCache 的具體實作,分散式快取標籤協助程式將會使用與快取標籤協助程式相同的記憶體內部提供者來儲存快取資料。

分散式快取標籤協助程式屬性

與快取標籤協助程式共用的屬性

  • enabled
  • expires-on
  • expires-after
  • expires-sliding
  • vary-by-header
  • vary-by-query
  • vary-by-route
  • vary-by-cookie
  • vary-by-user
  • vary-by
  • priority

分散式快取標籤協助程式繼承自與快取標籤協助程式相同的類別。 如需這些屬性的描述,請參閱快取標籤協助程式

NAME

屬性類型 範例
String my-distributed-cache-unique-key-101

name 是必要的。 name 屬性會作為每個預存快取執行個體的索引鍵。 不同於根據 Razor 頁面名稱和 Razor 頁面中位置,將快取索引鍵指派給每個實例的快取標籤協助程式,分散式快取標籤協助程式的索引鍵只會以屬性 name 為基礎。

範例:

<distributed-cache name="my-distributed-cache-unique-key-101">
    Time Inside Cache Tag Helper: @DateTime.Now
</distributed-cache>

分散式快取標記協助程式 IDistributedCache 實作

ASP.NET Core 內建兩項 IDistributedCache 實作。 其中一個是以 SQL Server 為基礎,另一項是以 Redis 為基礎。 您也可以使用協力廠商實作,例如 NCache。 如需這些實作的詳細資料,請參閱 ASP.NET Core 中的分散式快取。 這兩個實作都涉及在 StartupIDistributedCache 中設定執行個體。

沒有特別與使用 IDistributedCache 的任何特定實作建立關聯的標籤屬性。

其他資源