AppFabricキャッシュ - すべてのオブジェクトに使用されるシリアル化スタイルを指定できますか?
-
04-10-2019 - |
質問
いくつかのカスタムシリアル化を実装するオブジェクトは、XMLやBYTE []など、さまざまな形式にシリアル化して隔離できます。
キャッシュをかけると、appfabricがバイナリを強制したいときにクラスでixmlserializable実装を実行する問題に遭遇しました。 AppFabricキャッシング - オブジェクトのシリアル化と敏aserializationの要件は何ですか?
これを構成できますか?
(現時点では、回避策は、オブジェクトをプログラムでバイト[]にシリアル化し、それをキャッシュに送信して、途中でプロセスを逆にすることです)。
解決
MSDNドキュメントでは、この目標を達成するためにIdatacacheObjectSerializerを実装できると述べています。ここで読むことができます: http://msdn.microsoft.com/en-us/library/windowsazure/hh552969.aspx
class MySerializer : IDataCacheObjectSerializer
{
public object Deserialize(System.IO.Stream stream)
{
// Deserialize the System.IO.Stream 'stream' from
// the cache and return the object
}
public void Serialize(System.IO.Stream stream, object value)
{
// Serialize the object 'value' into a System.IO.Stream
// that can be stored in the cache
}
}
カスタムシリアイザーをDataCachefactoryに設定できます。
DataCacheFactoryConfiguration configuration = new DataCacheFactoryConfiguration();
configuration.SerializationProperties =
new DataCacheSerializationProperties(DataCacheObjectSerializerType.CustomSerializer,
new MyNamespace.MySerializer());
// Assign other DataCacheFactoryConfiguration properties...
// Then create a DataCacheFactory with this configuration
DataCacheFactory factory = new DataCacheFactory(configuration);
お役に立てれば。
所属していません StackOverflow