对象序列化
假设对象 A 有 6 个字段,现在对象 A 已序列化,一段时间后又添加了 3 个字段,并且对象被反序列化。
- 添加新字段将在反序列化时产生任何异常。
- 如何向后兼容
Assume object A has 6 fields, now the object A is serialized, after some time the 3 more fields are added and the object is deserialized.
- Adding of the new fields will create any exception when deserializing.
- How to have a backward compatibility
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
阅读版本容忍序列化
Read Version Tolerant Serialization
一般是添加一个版本,通过ISerialized实现自定义序列化。
处理适当的默认值和/或抛出更适当的异常。
请参阅此处
Generally add a version and implement custom serialization via ISerializable.
Handle appropriate defaults and or throw more appropriate exceptions there.
See here
.Net 有一个叫做“版本容忍序列化”的东西;)
看看这个易于理解的对象序列化示例:
http://programming.flashadventures.com/c-sharp/writing-objects-to-files-serialization/
.Net has something called "Version Tolerant Serialization" ;)
Check out this easy to understand example on object serialization:
http://programming.flashadventures.com/c-sharp/writing-objects-to-files-serialization/