protobuf-net版本容差

时间:2013-09-25 14:35:47

标签: serialization protobuf-net

Earlier question

我希望在可再发行的库包中使用protobuf-net,该包将被合并到多个应用程序中。每个应用程序都需要能够打开由库序列化的文件,操作对象,然后保存/序列化回文件。当然版本控制在这里成为一个大问题。如果旧版本对从较新版本生成的文件进行往返,我不想丢失数据。然后我找到了ProtoBuf.Extensible基类,但很快发现ProtoBuf.IExtensible不支持具有继承的类。我绝对必须有继承权。

我有什么选择吗?我开始感觉像版本容忍的序列化,除了最简单的类之外的任何东西都是一个白日梦。

1 个答案:

答案 0 :(得分:0)

与大多数事情一样:功能需要努力设计,实施,测试和支持。继承和可扩展的组合不是我迄今为止需要/要求进行全面调查的东西。我确信它是可以解决的,但是:它并非完全无足轻重。请记住,原始protobuf(Google规范)根本不包含继承:p

目前,状态只是“不是支持的用例”。你可以添加一个魔法[MakeItWork]。需要一些思考等等。