pho*_*tom 14 c# c++ serialization protocol-buffers
我们正在考虑使用Google的Protocol Buffers来处理c ++应用程序和ac#应用程序之间的序列化.
我的问题是,我已经为c#找到了几个不同的修改.两者看起来都不错,但是,有没有人知道两者之间有什么不同(如果有的话)
Mar*_*ell 13
当然; dotnet-protobufs是java版本的一个端口,所以共享一个非常类似的API和核心谷歌实现的方法; 代码宝石,不变性等
Protobuf-net是字节兼容的,但是遵循标准的.NET惯用语是一个完整的从头开始重新实现 - 因此对XmlSerializer等用户来说很熟悉.它也可以对抗可变对象(并且根据设置和结构不可变) v2),并有可选的WCF钩子,远程处理等.
两者都可以从.proto工作(可以说dotnet-protobufs 在这方面比protobuf-net 更好); 但是protobuf-net可以在没有.proto或任何codegen的情况下对现有的.net poco/DTO等起作用.
另外,protobuf-net提供了诸如继承支持之类的东西,但是你可能不会选择在你的场景中使用它,因为它不容易映射到.proto定义.