是否可以将protobuf-net与自定义类型序列化一起使用?
这是我所拥有的一个伪示例
//some user defined type
public class SomeMessage
{
public ActorRef ActorRef {get;set;}
}
//classes in my framework
public abstract ActorRef
{
public string Path {get;set;}
}
public class FooActorRef : ActorRef
{
}
public class BarActorRef : ActorRef
{
}
我需要将所有“ActorRef”类型序列化为相同类型,我只需要存储“路径”并忽略其余部分。 我还需要能够在这里拦截/解决“ActorRef”的反序列化。 因此,当反序列化器找到一个序列化的“路径”时,我需要它来调用我的自定义处理程序并以这种方式解析ActorRef。
所以,ActorRef的自定义序列化和反序列化以及它的子类型。 e.g。
//I want something like this to be called upon deserialization..
public ActorRef DeserializeActorRef(SerializerSpecificData x)
{
var path = x.Path;
return myContext.ResolveActorRef(path);
}
答案 0 :(得分:0)
我使用“代理人”解决了这个问题,这正是我在这里所需要的。