C# 基于ProtoBuf-Net的网络自描述消息

C# 基于ProtoBuf-Net的网络自描述消息,c#,.net,protocol-buffers,protobuf-net,C#,.net,Protocol Buffers,Protobuf Net,我想使用protobuf net作为客户端和服务器之间的网络套接字通信协议 一条消息大约有十几种不同的类类型(它们都扩展了相同的基类)。是否有可能在知道确切类型之前解码消息?如何做到这一点 提前谢谢我觉得你想要: [协议] [ProtoInclude(1,typeof(Foo)] ... [包括(N,类型(Bar)] 类SomeBase{} [原始合同] 类Foo:SomeBase{…} ... [原始合同] 类栏:SomeBase{…} 然后使用反序列化(…)。这将映射为“.proto”术语

我想使用protobuf net作为客户端和服务器之间的网络套接字通信协议

一条消息大约有十几种不同的类类型(它们都扩展了相同的基类)。是否有可能在知道确切类型之前解码消息?如何做到这一点


提前谢谢

我觉得你想要:

[协议]
[ProtoInclude(1,typeof(Foo)]
...
[包括(N,类型(Bar)]
类SomeBase{}
[原始合同]
类Foo:SomeBase{…}
...
[原始合同]
类栏:SomeBase{…}

然后使用
反序列化(…)
。这将映射为“.proto”术语中的有区别的联合中的一个。

我觉得你想要:

[协议]
[ProtoInclude(1,typeof(Foo)]
...
[包括(N,类型(Bar)]
类SomeBase{}
[原始合同]
类Foo:SomeBase{…}
...
[原始合同]
类栏:SomeBase{…}
然后使用
反序列化(…)
。这将映射为“.proto”术语中的一个
有区别的联合