Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/305.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 使用Protobuf net自定义类型序列化_C#_Serialization_Protocol Buffers_Protobuf Net - Fatal编程技术网

C# 使用Protobuf net自定义类型序列化

C# 使用Protobuf net自定义类型序列化,c#,serialization,protocol-buffers,protobuf-net,C#,Serialization,Protocol Buffers,Protobuf Net,可以将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;} } pu

可以将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”类型序列化为相同的类型,我只需要存储“Path”并忽略其余的。 我还需要能够在这里拦截/解析“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);
  }