Azure 受管理快取服務的序列化

重要

Microsoft 建議使用 Azure Redis 快取的所有新開發。 如需選擇 Azure 快取供應專案的目前檔和指引,請參閱 哪一個 Azure 快取供應專案適合我?

Microsoft Azure快取支援三種不同的序列化模式。 儲存在快取中的每個項目都必須先序列化成為持續性串流。 從快取擷取的每個項目都必須還原序列化為其物件格式。 本主題描述快取中可用的序列化選項。

序列化類型

下表說明三種序列化類型。

組態設定 描述

NetDataContractSerializer

使用 NetDataContractSerializer 類別序列化物件。 此為預設值。

BinaryFormatter

使用 BinaryFormatter 類別序列化物件。

CustomSerializer

使用應用程式提供的自訂序列化類別來序列化物件。

如果未指定序列化選項,快取會使用 NetDataContractSerializer。 請注意,任何儲存在快取中的類別都必須標示為 可序列化

在組態檔中,您可以將 serializationProperties 元素指定為 dataCacheClient 元素的子系。 下列範例示範具有兩個具名快取用戶端 的 dataCacheClients 區段。 預設快取用戶端會使用預設序列化,而次要快取用戶端則指定二進位序列化。

<dataCacheClients>
  <dataCacheClient name="default">
    <!-- Other configuration settings for cache omitted -->
  </dataCacheClient>
  <dataCacheClient name="binaryConfig">
    <serializationProperties serializer="BinaryFormatter" />
    <!-- Other configuration settings for cache omitted -->
  </dataCacheClient>
</dataCacheClients>

下列範例顯示如何存取程式碼中的各快取用戶端設定。

// "default" cache client configuration, "default" cache:
DataCache cacheTest1 = new DataCache();
cacheTest1.Put("test", "test");

// "binaryConfig" cache client configuration, "default" cache:
DataCache cacheTest2 = new DataCache("default", "binaryConfig");
cacheTest2.Put("test", "test");

自訂序列化需要額外編碼。 如需詳細資訊,請參閱 如何:搭配 Azure In-Role Cache 使用自訂序列化程式

注意

serializationProperties元素的程式設計對等專案是DataCacheSerializationProperties類別。 此類別的屬性對應於同樣三個序列化類型。 此列舉會指派給 DataCacheFactoryConfiguration.SerializationProperties 屬性。

重要

快取的 ASP.NET 提供者不支援二進位或自訂序列化類型。

另請參閱

其他資源

Azure 受管理快取服務功能