【发布时间】:2013-02-26 06:19:06
【问题描述】:
我可以看到 protobuf-net 似乎需要对运行类型模型进行确定性排序。什么是一个很好的策略来使用而不需要在每个类上都有属性来进行排序。
如果您是通过属性来实现,protobuf 它自己会如何做?
model.Add(typeof(IMessage), false).AddSubType(8500, typeof(DogBarkedEvent));
model.Add(typeof(IMessage), false).AddSubType(8501, typeof(DogBarkedEvent2));
如果我创建一个新模型并尝试反序列化
model2.Add(typeof(IMessage), false).AddSubType(8655, typeof(DogBarkedEvent));
model2.Add(typeof(IMessage), false).AddSubType(5300, typeof(DogBarkedEvent2));
肯定会失败。
我不知道运行时会有多少子类型,所以我担心下次启动应用程序时顺序可能会改变。
我已经阅读过这篇之前的帖子protobuf-net v2 type meta,虽然没有说明如何生成有关唯一标识符的好方法。
【问题讨论】:
标签: .net serialization protobuf-net