私はRedisSessionStateProviderで動作するprotobufシリアル化を取得しようとしています。私はMicrosoft.Web.Redis.ISerializerに署名を実装する必要があるとしてProtoBufシリアル化でエラーが発生するRedisSessionStateProvider
public object Deserialize(byte[] data)
{
return DeserializeDirect(data);
}
private object DeserializeDirect(byte[] data)
{
using (var memoryStream = new MemoryStream(data))
{
return Serializer.Deserialize<object>(memoryStream);
}
return null;
}
はデシリアライズが使用するために: - 私はMicrosoft.Web.Redis.ISerializerを実装するカスタムクラスとしてredisSerializerTypeを指定しているここで、デシリアライゼーションコードです返される実際の型を渡す方法はありません。したがって、DeserializeDirectがProtobuf.Serializerを使用してデシリアライズしようとすると(期待どおりに)「タイプは期待されておらず、契約は推測できません:System.Object」と表示されます。私は.NET Framework 4.6.1でWebアプリケーションを使用しています。私が間違っていることを誰かが指摘できると思っていました。
ありがとうございます!
ありがとうMarc、これは私が必要としていたものです! –